2011-08-29 21 views
2

可以說,我想一個字符串"Hello World"寫入到MemoryStream,並且不使用輔助對象讀取此字符串MessageBox.Show()BinaryWriterBinaryReaderStreamWriterStreamReader的讀寫流,而不輔助類中/字符串

你能告訴我如何用MemoryStream流對象的低級函數來完成這個任務。 P:我都使用C#和VB.NET,所以請隨意使用它們中的任何一個。

謝謝。

回答

2

你必須選擇一個文本編碼,並用它來獲取數據:

 var data = "hello, world"; 

     // Encode the string (I've chosen UTF8 here) 

     var inputBuffer = Encoding.UTF8.GetBytes(data); 

     using (var ms = new MemoryStream()) 
     { 
      ms.Write(inputBuffer, 0, inputBuffer.Length); 

      // Now decode it back 

      MessageBox.Show(Encoding.UTF8.GetString(ms.ToArray())); 
     } 
2

只需使用System.Text.ASCIIEncoding.ASCII.GetBytes("your string)並將生成的字節數組寫入流中。

然後,解碼字符串使用System.Text.ASCIIEncoding.ASCII.GetString(your byte array)

希望它有幫助。