BinaryFile.WriteString first writes the string length and then writes the actual string (this is .Net convention).
This allows you to read and write strings in arbitrary lengths.
If you like to write strings with the binary file and without this prefix you should first convert the strings to a byte array and then write the byte array.