2011-02-25 66 views
0

我需要将数据保存到二进制文件。它是类型List<Int16>。我怎样才能将这些数据写入文件?将Int16列表保存为二进制文件

+1

你想要什么格式的结果?只是说“二元”有点含糊。你能发表一个你想要输出看起来像什么的具体例子吗? – 2011-02-25 22:02:56

+0

记住格式化代码:<>消失,否则 – 2011-02-25 22:03:36

+0

可能重复的[C#写入对象到二进制文件](http://stackoverflow.com/questions/2598929/c-writing-object-to-binary-file) – 2011-02-25 22:03:41

回答

2

尝试使用

using(BinaryWriter binWriter = new BinaryWriter(File.Open(fileName, FileMode.Create))) 
{ 
    binWriter.Write(what_you_want); 
} 
3
using(var file = File.Create("out.bin")) 
    using (var writer = new BinaryWriter(file)) 
    { 
     foreach (short value in list) 
     { 
      writer.Write(value); 
     } 
    } 

注意到这一假设你想用你的CPU的字节顺序。

+0

可能最好在开始时写一个整数来表示列表中有多少项,尽管您可以通过将文件大小除以2来推断它。 – 2011-02-25 22:07:30

+0

@Jim真的够了 - 它归结为您希望它看起来如何* *完全**最终。您也可以只检测流的结束。 – 2011-02-25 22:09:02