0

我只是想在 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 中放什么。

如果你能帮助我。谢谢

4

1 回答 1

3

您需要SPFile.OpenBinaryStreamSPFile.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();
  }
}
于 2012-06-12T16:53:18.313 回答