用Delphi写一个UTF8编码格式的文本文件

http://blog.csdn.net/zhnglicho/article/details/36418019

原创 2014年07月02日 14:41:24

 

[delphi] view plain copy
 
  1. ...  
  2. var    f: TextFile;  
  3. begin  
  4.   AssignFile(f, 'test.txt');  
  5.   Rewrite(f);  
  6.   write(f, #$EF+#$BB+#$BF); // UTF-8 BOM,关键就是写入这个UTF-8的BOM, BOM 是 Bype Order Mark 的缩写。  
  7.   writeln(f, UTF8Encode('中文'));  
  8.   CloseFile(f);  
  9. ...  

在delphi中TextFile对象创建文件时默认是 ANSI 编码, 这样中文或者其它非英文字符显示的时候就会变成乱码。

以上是生成一个UTF8编码的文本文件的代码。

 

Byte Order 

Mark