【发布时间】:2014-03-30 07:39:43
【问题描述】:
我正在使用下面的代码创建一个Binary 文件。
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 个字节。
-
@kayson 如果十六进制编辑器从磁盘读取原始数据而不是使用操作系统的文件处理功能,则只会显示超出文件长度的垃圾。我不认为这是一个真正的问题,自从诺顿磁盘编辑器以来,我还没有遇到过这样的十六进制编辑器。
标签: c# binarywriter