2011-06-26 31 views
3

我想寫Argotic到memorystream,然後將它作爲字符串返回給另一個函數。 這就是我寫:如何將argotic.feed.save結果寫入內存流?

  Stream st = new MemoryStream(); 
      Feed.Save(st); //argotic Save method has the ability to write into Stream 
      StreamReader sr = new StreamReader(st); 
      return sr.ReadToEnd(); 

不過雖然st.length顯示我正確的長度我只得到了一個空字符串但它沒有性格: - ?

我該如何解決這個問題?

關於。

+0

當處理流時,您應該熟悉'using'語句。 http://msdn.microsoft.com/en-us/library/yh598w02.aspx –

+0

我完全熟悉如何使用「使用」上面的代碼片段是爲了舉例。 –

回答

4

保存後,將流的位置重置爲0以從頭讀取。否則,您將從當前位置讀取,這是流的末尾,因爲它剛剛寫入:

​​
+0

感謝您的回答我已經將我的代碼更改爲類似於:int i = st.Read(b,0,(int)st.Length);然後將字節轉換爲字符串,現在它的工作:) –