簡體   English   中英

空格字符/流寫入器問題 C#

[英]space character / streamwriter problem C#

我試圖制作一個固定寬度的文件,但我發現當我使用空格字符時,我的 txt 文件中有一個奇怪的標志。 如果我將“50”數字更改為“15”或“1000”之類的數字,它可以正常工作。

這是我的代碼:

string fileName = Path.GetTempPath() + "temp.txt";
FileStream stream = new FileStream(fileName, FileMode.OpenOrCreate, FileAccess.Write);
StreamWriter writer = new StreamWriter(stream);
writer.Write("1".PadRight(50, ' '));
writer.Write("0".PadRight(756, ' '));
writer.Close();

怎么了?

忽略您之前在此處閱讀的內容。 我拿了你程序的 output,它在 Microsoft 記事本中確實顯示得很奇怪,然后在其他幾個編輯器中打開它。 在所有這些中看起來都很好。 確信這是一些編碼錯誤,然后我打開 XVI32 來查看二進制文件。

我從文件末尾刪除了一個空格,然后重新保存文件,它顯示得很好。 我把它放回去,問題又回來了。 我將第一個十六進制字符從 32 更改為小於 30 的任何字符,它工作正常。

所以這似乎是微軟記事本的一個非常奇怪的錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM