今天在给策划同学,对一游戏中的一些实时数据保存到csv,发现用excel 打开csv utf-8导出还是有乱码,还得带上BOM数据标记后,才没有乱码;
BOM 是什么玩意,可以查看后续的文章:BOM、65279
下面使用actionscript3 来写文件演示:
var fr:FileReference = new FileReference();
fr.addEventListener(Event.COMPLETE, onFRSaveCom);
fr.addEventListener(Event.CANCEL, onFRCancel);
var bytes:ByteArray = new ByteArray();
//BOM
bytes.writeByte(0XEF);
bytes.writeByte(0XBB);
bytes.writeByte(0XBF);
bytes.writeMultiByte("Jave TESTING, With Bom Data Testing String.", "utf-8");
fr.save(bytes, "WithBomDataFile.txt");
function onFRCancel(e:Event):void
{
var fr:FileReference = e.target as FileReference;
fr.removeEventListener(Event.COMPLETE, onFRSaveCom);
fr.removeEventListener(Event.CANCEL, onFRCancel);
}
function onFRSaveCom(e:Event):void
{
var fr:FileReference = e.target as FileReference;
fr.removeEventListener(Event.CANCEL, onFRCancel);
fr.removeEventListener(Event.COMPLETE, onFRSaveCom);
}