FileSystem.WriteAllText添加不可打印的字符

时间:2014-02-24 19:28:02

标签: vb.net visual-studio-2012 file-io

以下是在VB.Net 2012中将文本写入文件的两种方法。第一种方法在每个文件前面加上相同的三个不可打印的字符:第二个按预期工作,不添加三个字符。 objDataReader是一个OleDB datareader。

知道为什么吗?

格雷格

My.Computer.FileSystem.WriteAllText(lblLocation.Text & "\" & 
objDataReader("MessageControlId").ToString & ".txt", objDataReader("MsgContents").ToString, False)

Using outfile As New StreamWriter(lblLocation.Text & "\" & objDataReader("MessageControlId").ToString & ".txt")
    outfile.Write(objDataReader("MsgContents").ToString)
End Using

1 个答案:

答案 0 :(得分:1)

感谢。在Googled BOM之后我找到了下面的条目,以防有人想要更详细的解释。虽然BOM在文本编辑器中不可见,但在将文件传递给HL7接口引擎时确实会出现问题。

格雷格

Write text files without Byte Order Mark (BOM)?