当前位置: 技术问答>linux和unix
linux下怎以将windowsxp的记事本保存的ansi格式的文件转换成linux下的utf8格式文件呀???
来源: 互联网 发布时间:2016-03-03
本文导语: linux下怎以将windowsxp的记事本保存的ansi格式的文件转换成linux下的utf8格式文件呀???能否给个源码出来... 谢谢. | 1、记事本可以直接存成UTF8烦人格式 2、看看这个能用不:http://download.csdn.net/sou...
linux下怎以将windowsxp的记事本保存的ansi格式的文件转换成linux下的utf8格式文件呀???能否给个源码出来...
谢谢.
谢谢.
|
1、记事本可以直接存成UTF8烦人格式
2、看看这个能用不:http://download.csdn.net/source/178978
或者你可以自己写一些转换工具,其实就是简单的转换字节,比如Java似乎可以直接转换编码,再比如下面的代码(似乎是C++Builder的,可以借鉴一下):
2、看看这个能用不:http://download.csdn.net/source/178978
或者你可以自己写一些转换工具,其实就是简单的转换字节,比如Java似乎可以直接转换编码,再比如下面的代码(似乎是C++Builder的,可以借鉴一下):
#include "Sysutils.hpp"
void Ansi2Unicode(String f1,String f2) // Ansi===> Unicode
{
TStringList *ss=new TStringList;
ss->LoadFromFile(f1);
int fh=FileCreate(f2);
for (int i=0;iCount;i++)
{
String s0=ss->Strings[i];
s0=s0+"rn";
WideString ws=s0;
void *buf=(void *)ws.c_bstr();
FileWrite(fh,buf,ws.Length()*2);
}
FileClose(fh);
delete ss;
}
void Unicode2Ansi(String f1,String f2) // Unicode ==> Ansi
{
int fh1=FileOpen(f1,fmOpenRead);
int fh2=FileCreate(f2);
wchar_t w;
void *buf=(void *)&w;
while (true)
{
int l=FileRead(fh1,buf,2); // 每次读两个字节
if (l