2020-11-04
概括的说,File,FileInfo,FileStream是用于文件 I/O 的类,StreamReader是用于从流读取和写入流的类,使用之前都需using System.IO。
先定义一个TXT文档路径: string txtpath = (@"D:\C#练习\1.txt"); 要读入这个文档。
(1)File 提供用于创建、复制、删除、移动和打开文件的静态方法,并协助创建 FileStream。
FileStream fs = File.Open(txtpath, FileMode.Open);
File可以直接调用各种方法(Open、Delete、Exists等)
例如: if (File.Exists(txtpath)) { File.Delete(txtpath); }
(2)FileInfo 提供用于创建、复制、删除、移动和打开文件的实例方法,并协助创建 FileStream。
FileInfo fi = new FileInfo(txtpath); //实例化
FileStream fs = fi.Open();
以上,二者都是针对文件操作,不操作文件内容
(3)FileStream 支持通过其 Seek 方法随机访问文件。默认情况下,FileStream 以同步方式打开文件,但它也支持异步操作。
利用FileStream 我们可以得到一个文件的Streams,接着就是来读取。
(4)StreamReader 通过使用 Encoding 进行字符和字节的转换,从 Streams 中读取字符。
StreamWriter 通过使用 Encoding 将字符转换为字节,向 Streams 写入字符。
StreamReader sr = new StreamReader(fs);
string str = null; string temp=null; while((temp=sr.ReadLine())!=null) { str+=" "+temp; }
得到一个字符串,再可以对字符串进行处理。
PS:
TextReader 是 StreamReader 和 StringReader 的抽象基类。抽象 Stream 类的实现用于字节输入和输出,而 TextReader 的实现用于 Unicode 字符输出。
TextWriter 是 StreamWriter 和 StringWriter 的抽象基类。抽象 Stream 类的实现用于字节输入和输出,而 TextWriter 的实现用于 Unicode 字符输出。
File类的方法每次执行都要验证安全机制,所以在少量使用的时候用File效率高,但是如果用的多了 要用FileInfo效率高
2020-11-04相关推荐
- 2020.11.04 使用OpenCV进行图像阈值分割操作【OpenCV C++】
使用函数threshold()进行图像分割 源代码: // testOpencv13.cpp : 此文件包含 "main" 函数.程序执行将在此处开始并结束. // #includ ...
- 2020.11.04@中国光大银行笔试
光大银行信息科技部 技术综合试卷在线考试 编程题|25.0分1/2 曹老板的求贤令(AC) 时间限制: 3000MS 内存限制: 589824KB 题目描述: 曹老板准备攻打吕布,为扩充战力颁布了求贤 ...
- QIIME 2教程. 04人体微生物组分析Moving Pictures(2020.11)
文章目录 QIIME 2用户文档. 4人体各部位微生物组 本节视频视频教程 启动QIIME2运行环境 样本元数据 下载和导入数据 拆分样品 序列质控和生成特征表 方法1. DADA2 方法2. Deb ...
- QIIME 2教程. 01简介和安装 Introduction Install(2020.11开始更新)
写在前面 QIIME是微生物组领域最广泛使用的分析流程,10年来引用20000+次,2019年Nature杂志评为近70年来人体菌群研究的25个里程碑事件--里程碑16:生物信息学工具助力菌群测序数据 ...
- QIIME 2教程. 23图形界面q2studio(2020.11)
文章目录 图形界面`q2studio` 译者简介 Reference 猜你喜欢 写在后面 图形界面q2studio QIIME 2 Studio (q2studio) https://docs.qii ...
- QIIME 2教程. 01简介和安装 Introduction Install(2020.11)
文章目录 写在前面 QIIME 2的优势 QIIME 2用户文档(版本:2020.11) 视频:QIIME 2用户文档01.1 简介 入门指南 什么是QIIME 2? 核心概念 数据文件: QIIME ...
- QIIME 2教程. 21进化树q2-phylogeny(2020.11)
使用q2-phylogeny进行系统发育推断 Phylogenetic inference with q2-phylogeny https://docs.qiime2.org/2020.11/tuto ...
- 2020.11新闻文章回顾
月初统一收租. 如果觉得每天的新闻&原创文章有点帮助,可以微微打赏,让德事君多一点坚持下去的动力! 2020.11新闻&文章 电子支付Joompay要做欧洲的支付宝 软件测试资质认证I ...
- QIIME 2教程. 32如何写方法和引用Citing(2020.11)
文章目录 引用QIIME 2 引用插件 检索特定于插件的引用 Retrieving plugin-specific citations 使用来源追溯列出引用 Using provenance to l ...
- QIIME 2教程. 31名词Glossary(2020.11)
文章目录 名词解释 译者简介 Reference 猜你喜欢 写在后面 名词解释 User Glossary https://docs.qiime2.org/2020.11/glossary/ 译者注: ...
最新文章
- 11、流程控制语句详解,IF,CASE,LOOP,LEAVE, ITERATE,REPEAT,WHILE
- hdu-超级密码(BFS)
- boost::iostreams模块测试定义的布尔类型特征
- Oracle一致性读(Consistent Read)的原理
- 第一章导言的笔记与思考
- android 蓝牙各种UUID (转)
- Linux命令之cut详解
- mysql中clear怎么用_MySQL 入门篇
- PyTorch 深度学习入门
- 如何应对微信群舆情?
- 字符串模式匹配——BF算法
- window设置oracle sid,window下改oracle_sid
- 百度地图查找我的位置定位服务器,百度地图手机版如何进行我的位置定位?
- NLM去噪算法的python实现
- 神了,阿里数据库专家纯手写了这份604页的Oracle+MySQL攻坚指南
- 2022-2028全球及中国全耗尽绝缘体上硅(FD-SOI)行业研究调查分析报告
- 鱼C论坛上Python练习题-72
- 7月书讯(上)| 读书开启下半年
- virtualbox拷贝文件夹 linux,VirtualBox下快速创建新的虚拟机——复制vdi文件
- 研发能力保持国际先进水平,亿美软通再获CMMI3认证
热门文章
- 【C++深度剖析教程3】C++中类的静态成员变量
- python3获取两个日期之间所有日期,以及比较大小
- 关于windows cmd的一些便捷应用
- ffmpeg在android上输出滑屏问题处理
- 使用 ExecuteMultiple 提高批量数据加载的性能
- 什么是cname a记录
- [Bugku][Web][CTF] 30-33 write up
- Java学习笔记7-2——注解与反射
- idea lombok 离线安装_Lombok与IntelliJ IDEA干了一架,完胜
- linux 磁盘科隆,上海第二工业大学嵌入式操作系统B复习(无答案版)