2012-06-12 53 views
0

我只是想將一行添加到SPFile對象,這是一個簡單的txt文件。將一行添加到SPFile對象

有沒有簡單的方法來做到這一點?我在想

感謝

編輯:這就是我對那一刻:

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中放什麼。

如果你能幫助我。 謝謝

+0

你有什麼,現在需要簡化?很難判斷什麼是簡單的,什麼不是沒有基線的...... –

+0

嘿,我已經編輯了我的文章。這就是我目前所擁有的。 感謝您的幫助 –

+0

您正在寫只讀流,沒有任何意義。大概樣本添加到我的答案。 –

回答

2

您需要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(); 
    } 
} 
+0

嘿謝謝,我找到了一個方法來做到這一點,但我沒有用太多的東西,我想你的解決方案更好,因爲它正確地關閉了流對象:)。 謝謝你 –