2

I have a function for writing String to a text file. It works, but for some reason (encoding?) it adds some weird data to the beginning of the file.

Here is the relevant code:

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

When I open the file in Notepad++, it shows this:enter image description here

What am I doing wrong?

2 Answers 2

7

use this stream.writeUTFBytes("Hello World"); instead of stream.writeUTF("Hello World!");

if we use writeUTF then it write prefix the string with a 16-bit length word. if you use writeUTFBytes then it omit this prefix Length String.

Sign up to request clarification or add additional context in comments.

Comments

3

writeUTF prepends the length of the string before writing it to file. Use writeUTFBytes if you want to write only the string.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.