读写文本文件-StreamReader和StreamWriter
1.读写文本文件
我们对文本文件的读写一般使用StreamReader和StreamWriter,因为不同的文本有不同的编码格式,这个StreamReader会帮我们自动处理,所以我们不需要关心文本文件的编码是什么
1,创建文本的读取流(会检查字节码标记确定编码格式)
StreamReader sr = newStreamReader(@"c:\xx\ReadMe.txt");
2,指定编码格式
StreamReader str = newStreamReader(@"c:\xx\xx.txt",Encoding.UTF8);
(可取的编码格式 ASCII Unicode UTF7 UTF8 UTF32)
3,在文件流的基础上创建文本读取流
FileStream fs = newFileStream(@"c:\xx\xx.txt",FileMode.Open,FileAccess.Read,FileShare.None);
StreamReader sr = new StreamReader(fs);
4,通过文件信息创建文本读取流-第二种方式
FileInfo myFile = newFileInfo(@"c:\xx\xx.txt");
StreamReader sr = myFile.OpenText();
流的关闭sr.Close();
1.2.读取文本文件
1,stringnextLine = sr.ReadLine();//读取一行字符串
2,stringrestOfStream = sr.ReadToEnd();//读取流中所有剩余的文本内容
3,intnextChar = sr.Read();//只读取一个字符
4, int nChars = 100;
char[] charArray = new char[nChars];
int nCharsRead = sr.Read(charArray,0,nChars);读取多个字符,第一个参数是要存放的字符数组,第二个参数是从数组的哪一个索引开始放,第三个参数是读取多少个字符 返回值是实际读取的字符的个数
1.3文本写入流StreamWriter-创建
StreamWriter的创建
1,StreamWritersw = new StreamWriter(@"c:\xx\xx.txt");(默认使用UTF-8编码)
2,StreamWritersw = new StreamWriter(@"c:\xx\xx.txt",true,Encoding.ASCII)
第二个参数表示是否以追加的方式打开,第三个参数是编码方式
3,通过FileStream创建StreamWriter
FileStream fs = newFileStream(@"c:\xx\xx.txt",FileMode.CreateNew,FileAccess.Write,FileShare.Read);
StreamWriter sw = new StreamWriter(fs);
4,通过FileInfo创建StreamWriter
FileInfo myFile = newFileInfo(@"c:\xx\xx.txt");
StreamWriter sw = myFile.CreateText();
所有流用完之后关闭sw.Close();
1.4文本写入流StreamWriter-写入
1,写入一行字符
string nextLine = "x xx x x x x";sw.Write(nextLine);
2,写入一个字符
char nextChar = 'a';
sw.Write(nextChar);
3,写入字符数组
char[] charArray = ..;
sw.Write(charArray);
4,写入字符数组的一部分
sw.Write(charArray,StartIndex,Length);
1:要写入的数组 2:开始索引 3写入长度
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace _329_使用streamReader和streamWriter读写文本文件
{class Program{static void Main(string[] args){//创建文本文件读取流StreamReader reader = new StreamReader("TextFile1.txt");///(一)//while(true)//{// string str = reader.ReadLine();//读取一行字符串// if (str == null) break;// Console.WriteLine(str);//}///(二)//string str= reader.ReadToEnd();//读取到文件结尾,读取文本中所有字符串//Console.WriteLine(str);///(三)//while(true)//{// int res= reader.Read();//读取一个字符// if(res==-1)// {// break;// }// else// {// Console.Write((char)res);// }//}//文本文件写入流StreamWriter writer = new StreamWriter("textfile2.txt");while(true){string message = Console.ReadLine();if (message == "q")break;//writer.Write(message);//写入字符串writer.WriteLine(message);//写入一个字符串并换行}writer.Close();Console.ReadKey();}}
}
读写文本文件-StreamReader和StreamWriter相关推荐
- C#使用StreamReader类和StreamWriter类读写文本文件
StreamReader类和StreamWriter类可以实现读写文本文件,这两个类都在命名空间System.IO下. using System; using System.Collections.G ...
- UWP 读写文件 StreamReader/StreamWriter
UWP程序和Winform差异还是蛮大的,UWP毕竟是倾向于移动客户端Application开发,所以权限问题值得被画一下重点.在UWP中,app不能再随随便便访问客户端的文件系统,必须要通过获得用户 ...
- C# StreamReader、StreamWriter类文本文件操作
StreamReader.StreamWriter位于命名空间System.IO下,功能与FileStream相比较弱,FileStream可以操作任何格式文件,但是StreamReader.Stre ...
- C#读写文本文件小结
C#读写文本文件小结 除了创建.复制.移动和删除外,对文本文件最常用的操作就是进行读写,C#提供了非常多的方法来对文本文件进行读写,今天我们做个小结: 一.写入文件 1.File类的静态方法Write ...
- c# - FileStream、StreamReader、StreamWriter
先看下File和FileStream的区别: File在读取文件时,是一下子全部读取出来: FileStream在读取文件时,是一点一点的读取的,对于内存来说,压力更小一些: FileSteam 读取 ...
- C# FileStream和StreamReader以及StreamWriter
1. FileStream读写文件 FileStream是操作字节的,StreamReader和StreamWriter是操作字符的,重点掌握FileStream. 重点:将创建文件流对象的过程写在u ...
- QT学习:读写文本文件
一.使用QFile类读写文本 使用QFile类读写文本文件代码如下: (1)源文件"main.cpp"的具体实现代码如下: #include <QCoreApplicatio ...
- Qfile与QTextStream读写文本文件
Qfile读取文本文件: void readwrite::readfile() {QString path = QFileDialog::getOpenFileName(this, "ope ...
- QT读写文本文件编码设置
QT读写文本文件编码设置 一.编码知识科普 Qt常见的两种编码是:UTF-8和GBK ★UTF-8:Unicode TransformationFormat-8bit,允许含BOM,但通常不含BOM. ...
最新文章
- 02.Python网络爬虫第二弹《http和https协议》
- html追加行clone,jQuery - 使用.clone()方法克隆拷贝元素
- Lesson 4.张量的线性代数运算
- VMware新装CentOS无法连接外网解决方法
- 如何在金山毒霸软件里安装腾讯视频
- mac ~/.bash_profile 重启失效
- 去除DataTable重复数据的三种方法(转)
- 离散数学与计算机的发展,计算机学科发展中离散数学的作用与运用
- OSPF域外(外部)路由(四、五类LSA)
- 用photoshop将图片不失真的放大
- Kademlia详解
- python表求列平均值_python中表列的平均值
- 关键链项目管理汇总贴
- 穿戴式设备应该新机遇--可以测心率的光感小米手环
- Python 股票分析入门
- 对多个Word文件批量添加页码,自由分页。Word精灵V5.0
- Armeria 小试牛刀
- torch-fidelity 简便计算FID,ISC,KID,PPL
- CTF隐写术之总结 让你少走弯路
- TypeScript:any和unknown
热门文章
- rowid去重(转)
- 常见排序算法的时间复杂度、空间复杂度、稳定性比较
- 计算机网络与电竞的论文,谈谈电子竞技毕业论文.doc
- react方法返回html_#react# 在页面中显示html代码块
- 我要翻译《Think Python》- 006 第四章 学习案例:接口设计
- Multisim 14.3安装包下载链接及安装教程
- 数据分析之描述性统计
- icloud有linux客户端吗,icloud
- android 音乐播放器评测,七大主流Android音乐播放器横向评测
- 关于升华网第一次培训的心得