请问我想向C一样向文件中写入指定字结数要怎么做呀?我这样写怎么报错呀?
FileInfo ifd = new FileInfo(saveFileDialog.FileName);
Stream iFile =  ifd.Open(FileMode.OpenOrCreate,FileAccess.Write,FileShare.Write);
iFile.Write((byte)(iNum),0,System.Runtime.InteropServices.Marshal.SizeOf(int));

解决方案 »

  1.   

    不是这样用的啦
    你可以用一个StreamWriter来帮你写,许多类型都支持
    using (StreamWriter sw = new StreamWriter(iFile))
    {
        sw.Write(iNum);
        sw.Write("afsdsadfsadf");
        sw.Write(12334.234);
    }
      

  2.   

    我刚用StreamWriter试了写int型只占一个字节和我想要的效果不一样!
      

  3.   

    你到底要干什么,说说你遇到的问题。如果是字符串读写,StreamWriter和StreamReader是不二选择。如果是读写对象,则用BinaryFormatter,如果面向字节的读写,也有很多工具方法……
      

  4.   

    BinaryFormatter这种序列化方式可以实现吗?
    Ivony()你那边有BinaryFormatter的例子吗?可以贴出一段来吗?小弟先谢谢喽!
      

  5.   

    刚刚试了一下BinaryFormatter它好像是把对象序列化进入了,这样占的空间太多了!有没有向C一样写入指定类型长度的方法呀?
      

  6.   

    有啊,你直接写入byte[]就好了嘛
      

  7.   

    那就不用StreamWriter了,StreamWrite是按照文本写入的。
    或者你试试BinaryWriter,我用了几次都觉得不好用
      

  8.   

    Stream.Write方法就是你所要的……
      

  9.   

    如果用Stream.Write的话byte [,]temp这样的数组如何保存呀?