如何将MemoryStream写入byte[]



可能重复:
从流创建字节数组

我正在尝试在内存中创建文本文件,并将其写入byte[]。我该怎么做?

public byte[] GetBytes()
{
    MemoryStream fs = new MemoryStream();
    TextWriter tx = new StreamWriter(fs);
    tx.WriteLine("1111");
    tx.WriteLine("2222");
    tx.WriteLine("3333");
    tx.Flush();
    fs.Flush();
    byte[] bytes = new byte[fs.Length];
    fs.Read(bytes,0,fs.Length);
    return bytes;
}

但由于数据长度

,它不起作用

怎么样:

byte[] bytes = fs.ToArray();

尝试以下代码:

public byte[] GetBytes()
{
MemoryStream fs = new MemoryStream();
TextWriter tx = new StreamWriter(fs);
tx.WriteLine("1111");
tx.WriteLine("2222");
tx.WriteLine("3333");
tx.Flush();
fs.Flush();
byte[] bytes = fs.ToArray();
return bytes;
}
byte[] ObjectToByteArray(Object obj)
{
    using (MemoryStream ms = new MemoryStream())
    {
        BinaryFormatter b = new BinaryFormatter();
        b.Serialize(ms, obj);
        return ms.ToArray();
    }
}
    public byte[] GetBytes()
    {
        MemoryStream fs = new MemoryStream();
        TextWriter tx = new StreamWriter(fs);
        tx.WriteLine("1111");
        tx.WriteLine("2222");
        tx.WriteLine("3333");
        tx.Flush();
        fs.Flush();
        fs.Position = 0;
        byte[] bytes = new byte[fs.Length];
        fs.Read(bytes, 0, bytes.Length);
        return bytes;
    }

相关内容

  • 没有找到相关文章

最新更新