我正在使用以下代码创建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
这是这样吗?我对此完全陌生,所以任何指导我正确方向的帮助对我来说都很重要。
答案 0 :(得分:3)
您使用的Write
重载:BinaryWriter.Write(String)
,使用编码写出您提供给文件的字符串。
看起来您希望将这些字符串转换为二进制数据,方法是将它们解码为十六进制值...除非它们看起来不像十六进制值,因为它们不会成为2组。无论如何,此过程记录在此处(How can I convert a hex string to a byte array?)。
请注意"图片"你发布的是十六进制编辑器。您没有在帖子中描述如何打开文件;如果您在记事本或类似的编辑器中打开文件,那么您将始终返回打印字符,而不是文件内容的十六进制表示。