Delphi转换文件为UTF-8的问题
将网页文件代码存在Memo里,
然后用Memo.savetofile来保存,
然后用如下代码转换为UTF-8
t:=TStringList.Create;
t.LoadFromFile( 'C:\Apache\htdocs\ye.html');
m:=TMemoryStream.Create;
m.Write(#$ff#$fe,2);
s:=t.text;
m.Write(pwidechar(s)^,length(s)*2);
m.SaveToFile( ''C:\Apache\htdocs\ye.html');
这样转码后,文件如果有18KB,就变成36KB了,扩大了一倍,
但我用Adobe Dreamweaver CS4 或用记事本来另存为UTF-8,只增加了1KB左右
请问有什么方法,谢谢!
[解决办法]
明显是你自己将它的肚子搞大的。。。
如果想存 utf8, 只要将文件头前三字节写入EF BB BF,就是 utf8 文本。。。只增加3字节