时间:2021-05-20
在近期的工作过程中发现自己的基础比较薄弱,所以最近在恶补基础知识。下面就对我所学习的File类和FileStream进行简单的总结。
1.1 File类,是一个静态类,支持对文件的基本操作,包括创建,拷贝,移动,删除和打开一个文件。File类方法的参量很多时候都是路径path。主要提供有关文件的各种操作,在使用时需要引用System.IO命名空间。
1.2 FileStream文件流 只能处理原始字节(raw byte)。FileStream 类可以用于任何数据文件,而不仅仅是文本文件。FileStream 对象可以用于读取诸如图像和声音的文件,FileStream读取出来的是字节数组,然后通过编码转换将字节数组转换成字符串。
1.3 区别:file:是一个文件的类,对文件进行操作的;filestream:文件流.对txt,xml等文件写入内容的时候需要使用的一个工具.打个形象的比喻.file是笔记本,需要filestream的这个笔才能写.
2.1 File类创建Txt
string path = @"C:\Users\Administrator\Desktop\1.txt"; File.Open(path, FileMode.OpenOrCreate);2.2 File类Txt拼接内容
List<string> users = new List<string>(); users.Add("张三|1000"); users.Add("李四|10000"); users.Add("王五|5000"); users.Add("赵六|6000"); File.AppendAllLines(path, users, Encoding.Default);2.3 File类字节形式读取txt文档
byte[] buttf = File.ReadAllBytes(path);string str = Encoding.Default.GetString(buttf, 0, buttf.Length);2.4 File类实现txt员工工资加倍
string[] filestr = File.ReadAllLines(path, Encoding.Default); for (int i = 0; i < filestr.Length; i++) { string[] str = filestr[i].Split('|'); filestr[i] = str[0] + "|" + (Convert.ToDouble(str[1]) * 2).ToString(); } File.AppendAllLines(path, filestr, Encoding.Default);2.5 File类常用方法
3.1文件流文字形式读取
byte[] bytsize = new byte[1024 * 1024 * 5]; using (FileStream stream = new FileStream(path, FileMode.OpenOrCreate,FileAccess.ReadWrite)) { while (true) { int r = stream.Read(bytsize, 0, bytsize.Length); //如果读取到的字节数为0,说明已到达文件结尾,则退出while循 if (r == 0) { break; } string str = Encoding.Default.GetString(bytsize, 0, r); Console.WriteLine(str); } }3.2文件流文字形式写入
string str = "今天天气好晴朗,处处好风光"; byte[] buttf = Encoding.Default.GetBytes(str); //文件流的写入 using (FileStream fscreat = new FileStream(path, FileMode.Append, FileAccess.Write)) { fscreat.Write(buttf, 0, buttf.Length); }3.3文件流视频形式复制
byte[] bytsize = new byte[1024 * 1024 * 5]; string videoPath = @"C:\Users\Administrator\Desktop\1、练习1-3.avi"; string videoNewPath = @"C:\Users\Administrator\Desktop\1.avi"; //创建读取流 using (FileStream fsread=new FileStream(videoPath,FileMode.Open,FileAccess.Read)) { //创建写入流 using (FileStream fswrite=new FileStream(videoNewPath,FileMode.OpenOrCreate,FileAccess.Write)) { while (true) { //返回实际读取到的字节 int r = fsread.Read(bytsize, 0, bytsize.Length); //当字节位0的时候 证明已经读取结束 if(r==0){ break; } fswrite.Write(bytsize,0,r); } } }因为刚开始学习所以有些不足,希望各位大佬可以指正。
到此这篇关于C#中File和FileStream的简单介绍和用法的文章就介绍到这了,更多相关C#中File和FileStream用法内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了C#使用FileStream循环读取大文件数据的方法。分享给大家供大家参考,具体如下:今天学习了FileStream的用法,用来读取文件流,教程上
本文实例分析了C#中string和StingBuilder内存中的区别,有助于更好的掌握C#程序设计中string和StingBuilder的用法。分享给大家供
C#FileStream类在C#语言中文件读写流使用FileStream类来表示,FileStream类主要用于文件的读写,不仅能读写普通的文本文件,还可以读取
本文以实例形式简单介绍了C#中委托的用法,是深入学习C#程序设计所必须掌握的重要技巧。现以教程形式分享给大家供大家参考之用。具体如下:首先,委托是C#中最为常见
本文实例讲述了C#中Out与Ref的区别,可以加深C#程序设计人员对Out和Ref用法的理解,具体分析如下:一、区别分析:Out和Ref作为参数传递到方法体中,