在SPFile对象中添加一行

时间:2012-06-12 15:58:03

标签: c# file sharepoint

我只是想在SPFile对象中添加一行,这是一个简单的txt文件。

有一种简单的方法吗?我在想

由于

编辑:这就是我现在所拥有的:

    public static void addLine(SPFile file, string line)
    {
        using(System.IO.StreamWriter strWriter = new System.IO.StreamWriter(file.OpenBinaryStream())){
            strWriter.WriteLine(line);
        }

    }

我这里没有任何错误,但文件没有保存。我试过做类似的事情:

 file.SaveBinary( args )

但我不知道该把什么放在args中。

如果你能帮助我。 感谢

1 个答案:

答案 0 :(得分:3)

您需要SPFile.OpenBinaryStream,其中一个SPFile.SaveBinary可以读/写。 TextReader的一些字符串操作在结果流上创建,如TextReader.ReadToEnd,并使用TextWriter将结果数据写入MemoryStream。

警告:下面的非编译代码:

using (var readStream = file.OpenBinaryStream())
{ 
  using(var reader = new StreamReader(readStream)
  {
    var allText = reader.ReadToEnd();
    var writeStream = new MemoryStream();
    using(var writer = new TextWriter(writeStream))
    {
      writer.Write(allText);
      writer.Write(extraText);
    }
    file.SaveBinary(writeStream.ToArray();
  }
}