写入没有文件路径的流

dra*_*vic 2 .net c# stream

我有一个遗留类,它将一些结果写入一个文件,使用StreamWriter接受FileStream的构造函数创建,之前通过给它的构造函数创建一个文件路径:

        using (FileStream fs = File.Open(outputFilePath, FileMode.Create))
        using (StreamWriter sw = new StreamWriter(fs))
        {
            MyFileWriter.WriteToFile(someData, sw);
        }
Run Code Online (Sandbox Code Playgroud)

顺便说一句,声明的代码用于WCF服务.
现在,我有新的要求,我必须将文件保存到客户端文件系统,我有约束,我只能发送byte []到客户端.我想对现有代码进行微小的更改以支持这一点,例如,是否存在某种类型的流,我可以创建它而不需要在其构造函数中指定文件路径?稍后我会将此流转换为byte[].
我也对你可能有的任何其他想法持开放态度.

Why*_*lee 5

你可以使用MemoryStream,

    byte[] result;
    using (MemoryStream ms = new MemoryStream())
    using (StreamWriter sw = new StreamWriter(ms))
    {
        MyFileWriter.WriteToFile(someData, sw);
        result = ms.ToArray();
    }

    // use the result byte[]
Run Code Online (Sandbox Code Playgroud)