在AS3中将字符串保存到文本文件

时间:2014-03-07 04:28:33

标签: actionscript-3 air

我有一个将String写入文本文件的功能。它有效,但由于某种原因(编码?),它会在文件的开头添加一些奇怪的数据。

以下是相关代码:

    var file:File =  new File(OUTPUT_FILE_NAME);
    var stream:FileStream = new FileStream();
    stream.open(file, FileMode.WRITE);
    stream.writeUTF("Hello World!");
    stream.close();

当我在Notepad ++中打开文件时,会显示:enter image description here

我做错了什么?

2 个答案:

答案 0 :(得分:7)

使用此stream.writeUTFBytes("Hello World");代替stream.writeUTF("Hello World!");

如果我们使用writeUTF,那么它会在字符串中写入带有16位长度字的前缀。如果使用writeUTFBytes,则省略此前缀Length String。

答案 1 :(得分:3)

writeUTF在将字符串写入文件之前预先设置字符串的长度。如果您只想写字符串,请使用writeUTFBytes