c#常见stream操作

常见并常用的stream一共有

文件流(FileStream),

内存流(MemoryStream),

压缩流(GZipStream),

加密流(CrypToStream),

网络流(NetworkStream);

1.文件流(读取文件流-输出文件流)FileStream

using(Streamstreamwrite=new FileStream(@"D:\BaiduYunDownload\45.avi",FileMode.OpenOrCreate))

{

using (Stream streamread = new FileStream(@"D:\BaiduYunDownload\xiawu3.avi", FileMode.Open))

{

byte[] ss=new byte[1024*1024*4];

int len;

while ((len = streamread.Read(ss, 0, ss.Length)) > 0)

{

streamwrite.Write(ss, 0, len);

Thread.Sleep(1000);

}

}

}

2.内存流(MemoryStream)

string strtxt="dasdfdsfsd";

byte[] bytetxt = Encoding.UTF8.GetBytes(strtxt);

Stream memstream = new MemoryStream();

memstream.Write(bytetxt, 0, bytetxt.Length);

3.压缩流(GZipStream),

压缩:

string s = "dfdfdf";

using (FileStream filestream = File.OpenWrite(@"c:\2.txt"))

{

using (GZipStream zipstream = new GZipStream(filestream, CompressionMode.Compress))

{

byte[] bytes = Encoding.UTF8.GetBytes(s);

zipstream.Write(bytes, 0, bytes.Length);

}

}

解压:

using (FileStream filestream = File.OpenRead(@"c:\2.txt"))

{

using (GZipStream zipstream = new GZipStream(filestream, CompressionMode.Decompress))

{

using (FileStream filestreamwrite = new FileStream(@"c:\3.txt", FileMode.OpenOrCreate))

{

byte[] bytes = new byte[1024 * 1024 * 4];

int length;

while ((length = zipstream.Read(bytes, 0, bytes.Length)) > 0)

{

filestreamwrite.Write(bytes, 0, length);

}

}

}

}

c#常见stream操作,布布扣,bubuko.com

时间: 2024-10-06 07:30:13

c#常见stream操作的相关文章

Windows下常用的100个CMD指令以及常见的操作

Windows下常用的100个CMD指令以及常见的操作 常用的100个CMD指令 gpedit.msc-–组策略 2. sndrec32---录音机 3. Nslookup---IP地址侦测器 ,是一个 监测网络中 DNS 服务器是否能正确实现域名解析的命令行工具. 它在 Windows NT/2000/XP 中均可使用 , 但在 Windows 98 中却没有集成这一个工具. 4. explorer---打开资源管理器 5. logoff---注销命令 6. shutdown---60秒倒计时

java常见文件操作

收集整理的java常见文件操作,方便平时使用: //1.创建文件夹 //import java.io.*; File myFolderPath = new File(str1); try { if (!myFolderPath.exists()) { myFolderPath.mkdir(); } } catch (Exception e) { System.out.println("新建目录操作出错"); e.printStackTrace(); } //2.创建文件 //impor

Redis学习笔记(字符串类型常见命令操作)

Redis字符串类型常见命令操作 存取数据 存字符串类型数据: 取字符串类型数据: 当键不在的时候会返回空 如果重复向一个键中存数据,后存储的数据会覆盖前存储的数据 递增数字 当存的字符串是整数形式的时候,Redis提供一个: INCR命令    作用:让当前键值递增,并返回递增后的值 当要递增的键值不存在的时候,redis会自动存入这个键,默认值为0,并把值递增 键的命名 键名Redis没有强制要求,一般命名形式为: 对象类型:对象ID:对象属性 例如: user:1:name  使用这个来存

touch.js——常见应用操作

touch.js--常见应用操作 基本事件: touchstart   //手指刚接触屏幕时触发 touchmove    //手指在屏幕上移动时触发 touchend     //手指从屏幕上移开时触发 touchcancel  //触摸过程被系统取消时触发(少用) 一.事件绑定(常用,重要) touch.on( element, types, callback ); 功能描述:事件绑定方法,根据参数区分事件绑定和事件代理. 参数描述: 参数 类型 描述 element element或str

7.2-全栈Java笔记:数组常见的操作

数组常见操作 数组的遍历 数组元素下标的合法区间:[0, length-1].我们可以通过下标来遍历数组中的元素,遍历时可以读取元素的值或者修改元素的值. [示例1] 使用循环遍历初始化和读取数组 public class   Test { public static void   main(String[] args) { int[]   a = new int[4]; //初始化数组元素的值 for(int   i=0;i<a.length;i++){ a[i] = 100*i; } //读

jquery api 常见 事件操作

change.html 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2 <html> 3 <head> 4 <title>ready.html</title> 5 <meta http-equiv="content-type" content="text/html; charset=UTF-8"

C语言常见字符串操作函数总结

1. bcmp 原型:extern int bcmp(const void *s1, const void *s2, int n); 用法:#include <string.h> 功能:比较字符串s1和s2的前n个字节是否相等 说明:相等返回0,否则返回非0值 2. bcopy 原型:extern void bcopy(const void *src, const void *dest, int n); 用法:#include <string.h> 功能:将字符串src的前n个字节

Stream 操作 合并两个list

addAll  添加另一集合里面的元素 add 添加整个集合包括 [] Stream 操作 合并两个lis  出自http://www.it1352.com/963663.html 1 public class Test { 2 public static void main(String[] args) { 3 4 List<String> destList = Collections.synchronizedList(new ArrayList<>(Arrays.asList(

selenium 常见元素操作:三大等待

selenium 常见元素操作 三大等待 三大切换(iframe,window,alert) 下拉列表 鼠标和键盘 js+ dom应用() 上传操作 强制等待:time.sleep()        (译:私立破) 必须等待固定时间后才可以往下运行 from selenium import webdriver import time # 强制等待需要导入time,使用其中的sleep方法 # 强制等待 sleep(译:私立破) # 打开谷歌浏览器,建立会话.启动Chromedriver.exe