我正在使用下面的代碼創建Binary
文件。在C中創建二進制文件的正確方法#
var a = new[]
{
"C50-12-25",
"C50-12-20"
};
using (var bw = new BinaryWriter(File.Open("file.bin", FileMode.Create)))
{
foreach (var i in a)
{
bw.Write(i);
}
}
我打開文件,我沒有看到的東西,像一個畫面是這樣,我一直以爲一個Binary
文件會是什麼樣子。
http://www.dotnetperls.com/binary.png
實際上,我能讀我寫的完整文本。
C50-12-25 C50-12-20
這是這樣嗎?我對此完全陌生,所以任何幫助我指出正確的方向對我來說都是很重要的。
以十六進制編輯器打開文件時的另一個注意事項:文件內容僅對文件的長度有效。例如。如果您將4個字節寫入文件,則前4個字節保證是正確的,但超出這個範圍就是垃圾。這與文件存儲方式有關;他們根本不會單獨存儲4個字節。 – kevin
@kayson如果從磁盤讀取原始數據而不是使用操作系統的文件處理函數,十六進制編輯器將只顯示超出文件長度的垃圾。我不認爲這是一個真正的問題,自從諾頓磁盤編輯器以來,我還沒有遇到過這樣的十六進制編輯器。 – Dai