【问题标题】:Object Serialization -Binaryformatter , how to write at the and / insert data with in already existing file?对象序列化-Binaryformatter,如何在现有文件中写入和/插入数据?
【发布时间】:2012-09-04 16:04:03
【问题描述】:

我想写入包含文件名列表的文件,我正在存储这个本地磁盘,

每当我写入文件时,所有现有数据都被擦除并且新数据被覆盖,我无法保留现有数据并在现有数据行之后开始写入

我的二进制格式编写器代码是这样的

private object ReadFileToUI(string filename)
    {
        Stream readStr = File.OpenRead(filename);
        BinaryFormatter rbf = new BinaryFormatter();
        object obj= rbf.Deserialize(readStr);
        readStr.Close();
        return obj;


    }

我的二进制编写器就像 thsi ,

   Stream str = File.OpenWrite(fileName);
        BinaryFormatter bf = new BinaryFormatter();
        bf.Serialize(str, fl);
        str.Close();

假设如果我在文件中已经有 10 个对象,任何新的写入都应该被视为第 11 个及以后的数据,并且文件中以前的数据不应该受到影响??

【问题讨论】:

  • 你可以试试 StreamWriter。我相信这可以让您指定将数据附加到文件而不是覆盖它。

标签: c# winforms io binary .net


【解决方案1】:

像这样打开你的信息流...

Stream str = File.Open(fileName, FileMode.Append, FileAccess.Write);

【讨论】:

  • "流不可读。如果我替换你的代码,这是我得到的错误..有什么想法吗?
猜你喜欢
  • 1970-01-01
  • 2013-06-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-23
  • 2018-04-18
  • 1970-01-01
相关资源
最近更新 更多