加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 如何将字节数组读入FileStream

发布时间:2020-12-15 18:08:35 所属栏目:百科 来源:网络整理
导读:我有一个字节数组,我想将字节数组读入FileStream.以下是我的代码示例: string fileName = "test.txt";byte[] file = File.ReadAllBytes(Server.MapPath("~/Files/" + fileName));FileStream fs = new FileStream();fs.ReadByte(file);object obj = LoadFile
我有一个字节数组,我想将字节数组读入FileStream.以下是我的代码示例:
string fileName = "test.txt";
byte[] file = File.ReadAllBytes(Server.MapPath("~/Files/" + fileName));
FileStream fs = new FileStream();
fs.ReadByte(file);
object obj = LoadFile<object>(fs);

public static T LoadFile<T>(FileStream fs)
{
    using (GZipStream gzip = new GZipStream(fs,CompressionMode.Decompress))
    {
        BinaryFormatter bf = new BinaryFormatter();
        return (T)bf.Deserialize(gzip);
    }
}

在上面的方法中,我使用FileStream来读取字节数组,但不幸的是fs.ReadByte无法读取字节数组.任何帮助请关注如何将字节数组读入FileStream以用作方法“LoadFile”中的参数.请不要直接将文件读入FileStream,因为此处的文件是从数据库或其他来源的其他地方加载的.

解决方法

string fileName = "test.txt";
byte[] file = File.ReadAllBytes(Server.MapPath("~/Files/" + fileName));
MemoryStream memStream = new MemoryStream();
BinaryFormatter binForm = new BinaryFormatter();
memStream.Write(file,file.Length);
memStream.Seek(0,SeekOrigin.Begin);
Object obj = (Object)binForm.Deserialize(memStream);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读