如何从字符串生成流?

1004

我需要为一个从文本文件中获取流的方法编写单元测试。我想要做类似于这样的事情:

Stream s = GenerateStreamFromString("a,b \n c,d");

1
有关内存节省的解决方案,请参见https://dev59.com/ToPba4cB1Zd3GeqPzO8Q#55170901中的“StringReaderStream”。 - xmedeko
14个回答

9

4

0

Stream stream = ToStream(""); //passing your string input.


        public static Stream ToStream(string str)
        {
            MemoryStream stream = new MemoryStream();
            StreamWriter writer = new StreamWriter(stream);
            writer.Write(str);
            writer.Flush();
            stream.Position = 0;
            return stream;
        }

-2
一个好的字符串扩展组合:
public static byte[] GetBytes(this string str)
{
    byte[] bytes = new byte[str.Length * sizeof(char)];
    System.Buffer.BlockCopy(str.ToCharArray(), 0, bytes, 0, bytes.Length);
    return bytes;
}

public static Stream ToStream(this string str)
{
    Stream stringStream = new MemoryStream();
    stringStream.Read(str.GetBytes(), 0, str.Length);
    return stringStream;
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接