[英]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.