Быстрый способ получить содержимое потока памяти в виде строки ASCII


У меня есть строка JSON в потоке памяти. Я использую следующий код, чтобы получить его в виде строки ASCII:

MemoryStream memstream = new MemoryStream(); 
/* Write a JSON string to memstream here */

byte[] jsonBytes = new byte[memstream.Length];
memstream.Read(jsonBytes, 0, (int)memstream.Length);

string jsonString = Encoding.ASCII.GetString(jsonBytes);

Каков более короткий / кратчайший способ сделать это?

2 9

2 ответа:

Можно использовать метод ToArray:

using (var stream = new MemoryStream())
{
    /* Write a JSON string to stream here */

    string jsonString = Encoding.ASCII.GetString(stream.ToArray());
}

new StreamReader(memstream, Encoding.ASCII).ReadToEnd()