• 将String转化成Stream,将Stream转换成String, C# Stream 和 byte[] 之间的转换(文件流的应用)


           static void Main( string[] args )
            {            
                string str = "Testing 1-2-3";             //convert string 2 stream            
                byte[] array = Encoding.ASCII.GetBytes(str);            
                MemoryStream stream = new MemoryStream(array);             //convert stream 2 string      
                StreamReader reader = new StreamReader(stream);
                string text = reader.ReadToEnd();
                Console.WriteLine(text); 
                Console.ReadLine(); 
           }
    /// 将 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;
    }
    //string转byte[]:
    byte[] byteArray = System.Text.Encoding.Default.GetBytes ( str );
    
    //byte[]转string:
    string str = System.Text.Encoding.Default.GetString ( byteArray );
    
    //string转ASCII byte[]:
    byte[] byteArray = System.Text.Encoding.ASCII.GetBytes ( str );
    
    //ASCII byte[]转string:
    string str = System.Text.Encoding.ASCII.GetString ( byteArray );
    
    //https://www.cnblogs.com/weibanggang/p/10173022.html

    来源 :https://www.xuebuyuan.com/3191678.html

  • 相关阅读:
    video和audio
    H5-geolocation学习
    hammer.js学习
    echarts学习
    移动端手势识别
    SVG
    e.key && e.which && e.keyCode
    git中避免提交.DS_Store文件[转载]
    前端笔试题[1]
    Javascript实现格式化输出
  • 原文地址:https://www.cnblogs.com/shy1766IT/p/5371755.html
Copyright © 2020-2023  润新知