zoukankan      html  css  js  c++  java
  • C# Stream 和 byte[] 之间的转换

    一. 二进制转换成图片
    MemoryStream ms = new MemoryStream(bytes);
    ms.Position = 0;
    Image img = Image.FromStream(ms);
    ms.Close();
    this.pictureBox1.Image

    二. C#中byte[]与string的转换代码

    1、System.Text.UnicodeEncoding converter = new System.Text.UnicodeEncoding();
      byte[] inputBytes =converter.GetBytes(inputString);
      string inputString = converter.GetString(inputBytes);

    2、string inputString = System.Convert.ToBase64String(inputBytes);
      byte[] inputBytes = System.Convert.FromBase64String(inputString);
    FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read);

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

    /// 将 Stream 转成 byte[]

    public byte[] StreamToBytes(Stream stream)
    {
        byte[] bytes = new byte[stream.Length];
        stream.Read(bytes, 0, bytes.Length);
        // 设置当前流的位置为流的开始
        stream.Seek(0, SeekOrigin.Begin);
        return bytes;
    }

    /// 将 byte[] 转成 Stream

    public Stream BytesToStream(byte[] bytes)
    {
        Stream stream = new MemoryStream(bytes);
        return stream;
    }

    四. Stream 和 文件之间的转换

    将 Stream 写入文件

    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();
    }

    五. 从文件读取 Stream

    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;
    }

    如果这篇文章对您有帮助,您可以打赏我

    技术交流QQ群:15129679

  • 相关阅读:
    diary and html 文本颜色编辑,行距和其它编辑总汇
    bash coding to changeNames
    virtualbox ubuntu 网络连接 以及 连接 secureCRT
    linux 学习6 软件包安装
    linux 学习8 权限管理
    vim 使用2 转载 为了打开方便
    ubuntu
    linux 学习15 16 启动管理,备份和恢复
    linux 学习 14 日志管理
    linux 学习 13 系统管理
  • 原文地址:https://www.cnblogs.com/yeminglong/p/2604868.html
Copyright © 2011-2022 走看看