0

我想以 utf-8 编码格式保存文件(不是没有 BOM 的 utf-8)。Adobe Charset 支持页面上没有明确的信息

(http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/charset-codes.html)

我想将文件保存为带有 csv 扩展名的 utf-8 格式。我尝试了以下方法,但我得到了我想要的:

byte.writeMultiBytes(fileContent,"utf-8");

我也试过,

unicode-1-1-utf-8、unicode-2-0-utf-8、x-unicode-2-0-utf-8。

我也尝试过其他方法,但仍然没有获得所需的编码格式:

writeUTF(var:String) writeByte(var:String)

这是我现在拥有的,

var fileReference:FileReference = new FileReference();  
var bytes:ByteArray = new ByteArray();

// SAVING file in utf-8 encoding format.
bytes.writeUTFBytes(this.fileContents);
fileReference.save(bytes, "PluginLog.csv");
closePopup(null);
4

1 回答 1

2

答案 intuidev 也对我有帮助。它用Java显示了答案。这是我在 Actionscript 中复制它的方式:

public function writeFileWithUTF8Bom(data:String, fileName:String):void {
    var fileRef:FileReference = new FileReference();
    var b:ByteArray = new ByteArray();
    // Include the byte order mark for UTF-8
    b.writeByte(0xEF);
    b.writeByte(0xBB);
    b.writeByte(0xBF);
    b.writeUTFBytes(data);
    fileRef.save(b, fileName);          
}
于 2013-04-24T20:36:50.830 回答