目前想在flex 上直接作存檔動作,flash 10 以後的版本可以直接存檔而不用透過server,在實作上有遇到中文亂碼的問題,本來以為使用 bytearray.writeUTFBytes() 的方式就可以解決問題,但後來發現不行,只能用筆記本打開才不會亂碼,用wordpad, excle 打開都是亂碼,看來是我太淺了.............
charset information
後來有找到解決方式如下:
var f:FileReference = new FileReference();
var _txtByte :ByteArray = new ByteArray();
......
......
_txtByte.writeMultiByte(str,"cn-big5"); //繁体中文
f.save(_txtByte, "test.csv");
如果檔案要存成 excel的可以參考如下的文章
參考網址: as3xls 中文解決方式
其方式改寫 excelFile.saveToByteArray 多一個 charset 參數 ,繁体中文可以設定 cn-big5
沒有留言:
張貼留言