• C# Stream 和 byte[] 之间的转换


    640?wx_fmt=jpeg

    /// <summary> 

    /// 将 Stream 转成 byte[] 

    /// </summary> 

    public byte[] StreamToBytes(Stream stream) 

        byte[] bytes = new byte[stream.Length]; 

        stream.Read(bytes, 0, bytes.Length); 


        // 设置当前流的位置为流的开始 

        stream.Seek(0, SeekOrigin.Begin); 

        return bytes; 


    /// <summary> 

    /// 将 byte[] 转成 Stream 

    /// </summary> 

    public Stream BytesToStream(byte[] bytes) 

        Stream stream = new MemoryStream(bytes); 

        return stream; 


    /// <summary> 

    /// 将 Stream 写入文件 

    /// </summary> 

    public void StreamToFile(Stream stream,string fileName) 

        // 把 Stream 转换成 byte[] 

        byte[] bytes = new byte[stream.Length]; 

        stream.Read(bytes, 0, bytes.Length); 

        // 设置当前流的位置为流的开始 

        stream.Seek(0, SeekOrigin.Begin); 


        // 把 byte[] 写入文件 

        FileStream fs = new FileStream(fileName, FileMode.Create); 

        BinaryWriter bw = new BinaryWriter(fs); 

        bw.Write(bytes); 

        bw.Close(); 

        fs.Close(); 


    /// <summary> 

    /// 从文件读取 Stream 

    /// </summary> 

    public Stream FileToStream(string fileName) 

    {             

        // 打开文件 

        FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read); 

        // 读取文件的 byte[] 

        byte[] bytes = new byte[fileStream.Length]; 

        fileStream.Read(bytes, 0, bytes.Length); 

        fileStream.Close(); 

        // 把 byte[] 转换成 Stream 

        Stream stream = new MemoryStream(bytes); 

        return stream; 


  • 相关阅读:
    递归函数的写法笔记
    Spring项目中执行Java脚本
    关于秒杀的系统架构优化思路
    分布式搜索引擎Elasticsearch性能优化与配置
    分布式搜索引擎ElasticSearch+Kibana (Marvel插件安装详解)
    分布式搜索引擎Elasticsearch的查询与过滤
    Linux 下编译升级 Python
    搭建通过 ssh 访问的 Git 服务器
    分布式搜索引擎Elasticsearch的简单使用
    PHP 源码学习之线程安全
  • 原文地址:https://www.cnblogs.com/hgmyz/p/12351377.html
Copyright © 2020-2023  润新知