Преобразование String в System.IO.Stream
Мне нужно преобразовать String в тип System.IO.Stream, чтобы перейти к другому методу.
Я пробовал это безуспешно.
Stream stream = new StringReader(contents);
Ответы
Ответ 1
Попробуйте следующее:
// 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();
Ответ 2
Чтобы преобразовать строку в поток, вам нужно решить, какая кодировка байтов в потоке должна представлять эту строку - например, вы можете:
MemoryStream mStrm= new MemoryStream( Encoding.UTF8.GetBytes( contents ) );
Ссылки MSDN:
Ответ 3
System.IO.MemoryStream mStream = new System.IO.MemoryStream(System.Text.Encoding.UTF8.GetBytes( contents));
Ответ 4
string str = "asasdkopaksdpoadks";
byte[] data = Encoding.ASCII.GetBytes(str);
MemoryStream stm = new MemoryStream(data, 0, data.Length);
Ответ 5
это старый, но для помощи:
вы также можете использовать поток stringReader
string str = "asasdkopaksdpoadks";
StringReader TheStream = new StringReader( str );