将string转换为System.IO.Stream

我需要将string转换为System.IO.Streamtypes传递给另一个方法。

我尝试了这个失败。

Stream stream = new StringReader(contents); 

尝试这个:

 // convert string to stream byte[] byteArray = Encoding.UTF8.GetBytes(contents); //byte[] byteArray = Encoding.ASCII.GetBytes(contents); MemoryStream stream = new MemoryStream(byteArray); 

 // convert stream to string StreamReader reader = new StreamReader(stream); string text = reader.ReadToEnd(); 

要将string转换为stream,您需要确定stream中字节应该表示该string的编码方式 – 例如,您可以:

 MemoryStream mStrm= new MemoryStream( Encoding.UTF8.GetBytes( contents ) ); 

MSDN参考资料:

 System.IO.MemoryStream mStream = new System.IO.MemoryStream(System.Text.Encoding.UTF8.GetBytes( contents)); 
 string str = "asasdkopaksdpoadks"; byte[] data = Encoding.ASCII.GetBytes(str); MemoryStream stm = new MemoryStream(data, 0, data.Length); 

这是旧的,但要求帮助:

你也可以使用stringReaderstream

 string str = "asasdkopaksdpoadks"; StringReader TheStream = new StringReader( str );