我正在編寫一個應用程序,它必須生成具有固定大小列的純文本文件。從VB.NET寫入文本文件(編碼)
我當前的代碼是:
Dim MyFilePath As String = Path & FILE_PREFIX & FileNr & ".TXT"
IO.File.Delete(MyFilePath)
Dim FileStr As New IO.StreamWriter(MyFilePath, False, <ENCODER HERE>)
Do While r.Read
FileStr.WriteLine(r("TXTLine"))
Loop
FileStr.Close()
r.Close()
我的問題是,我有一些特殊的字符,如:「N」,「A」,等等,我無法找到正確的編碼。
- 如果我使用默認值,那麼它會用兩個字符替換 「ñ」。
- 如果我使用ASCII,那麼所有特殊的 字符最終爲:「?」
- 如果我使用UTF-8那麼所有的文本都是OK, 但它在文件的第一個字節 中增加了一個「ÿ」。
我需要將特殊字符寫入文本文件,就像它們進入數據記錄器一樣。而且我不能添加額外的字符,因爲列是固定長度的...
我該怎麼辦?
ÿ是[字節順序標記] [1] ...你在打開什麼文件? [1]:http://en.wikipedia.org/wiki/Byte-order_mark – Breakthrough 2009-08-21 17:59:00