File FileStream StreamWriter StreamReader文件读写操作方法
string path = "D:\\AccountChecking\\Test.txt";
string content = "abcdefg\r\nhigklmn\r\nopqrst"; //操作文件夹对象,无则创建文件夹,可以一次创建多级
Directory.CreateDirectory("D:\\AccountChecking\\"); #region File-对于文件的典型操作,如复制、移动、重命名、创建、打开、删除和一次将追加到单个文件的类 //写文件
File.WriteAllText(path, content, Encoding.Default);
File.WriteAllLines(path, content.Split('r'), Encoding.Default);
File.WriteAllBytes(path, Encoding.Default.GetBytes(content));
//追加内容
File.AppendAllText(path, content, Encoding.Default);
//读文件
string content_t = File.ReadAllText(path, Encoding.Default);
string[] content_s = File.ReadAllLines(path, Encoding.Default);
byte[] content_b = File.ReadAllBytes(path); #endregion #region FileStream-以流的形式对文件系统上的文件进行读取、写入、打开和关闭操作,既支持同步读写操作,也支持异步读写操作 //写文件
using (FileStream fileStream = new FileStream(path, FileMode.Create))
{
byte[] data = Encoding.Default.GetBytes(content);
fileStream.Write(data, , data.Length);//将内容写入缓冲区
//Flush()将缓冲区内容写入文件系统,后续无操作的话,在关闭或出using时会自动写入文件系统
//fileStream.Flush();
//使用using就不必显示的关闭流,它会自动关闭并释放
//fileStream.Close();
}
//追加内容
using (FileStream fileStream = new FileStream(path, FileMode.Append))
{
byte[] data = Encoding.Default.GetBytes(content);
fileStream.Write(data, , data.Length);
}
//读文件
using (FileStream fileStream = new FileStream(path, FileMode.Open))
{
byte[] data = new byte[fileStream.Length];
fileStream.Read(data, , data.Length);
string result = Encoding.Default.GetString(data);
//do something...
} #endregion #region StreamWriter&StreamReader-StreamReader实现了抽象基类TextReader类,而StreamWriter实现了抽象基类TextWriter,分别用于对流的读取与写入 //写文件
using (StreamWriter streamWriter = new StreamWriter(path))
{
//方法一
streamWriter.Write(content);
streamWriter.Flush();//将缓冲区内容写入磁盘
//使用using就不必显示的关闭流,它会自动关闭并释放
//streamWriter.Close();
//方法二
streamWriter.WriteLine(content.ToCharArray());//按行写入
//streamWriter.Flush();
}
//追加内容
using (StreamWriter streamWriter = new StreamWriter(path, true))
{
//方法一
streamWriter.Write(content);
streamWriter.Flush();
//方法二
streamWriter.WriteLine(content.ToCharArray());//按行追加
}
//读文件(StreamReader类似指针位移的操作,所以实例化多个对象)
using (StreamReader streamReader_ToLine = new StreamReader(path))
using (StreamReader streamReader_ToEnd = new StreamReader(path))
using (StreamReader streamReader_To = new StreamReader(path))
{
string msg = String.Empty;
//方法一
while (!streamReader_ToLine.EndOfStream)
{
msg = streamReader_ToLine.ReadLine();
//do something...
}
//方法二
if (!streamReader_ToEnd.EndOfStream)
{
msg = streamReader_ToEnd.ReadToEnd();
//do something...
}
//方法三
char[] data = new char[streamReader_To.BaseStream.Length];
streamReader_To.Read(data, , data.Length);
string result = new String(data);
//do something...
} #endregion
File FileStream StreamWriter StreamReader文件读写操作方法的更多相关文章
- FileStream StreamWriter StreamReader BinaryReader
FileStream vs/differences StreamWriter? http://stackoverflow.com/questions/4963667/filestream-vs-dif ...
- .net学习笔记--文件读写的几种方式
在.net中有很多有用的类库来读写硬盘上的文件 一般比较常用的有: File:1.什么时候使用:当读写件大小不大,同时可以一次性进行读写操作的时候使用 2.不同的方式可以读写文件类型不 ...
- File FileStream StreamReader StreamWriter C#
存在各种各样的IO设备,比如说文件File类(字符串文件和二进制文件),可以直接使用File类对文件进行读写操作. 这些各种IO的读取和写入是通过流的形式实现的,基类为Stream,针对各种不同的IO ...
- 20151024_003_C#基础知识(File / FileStream / StreamReader/StreamWriter)
1:绝对路径和相对路径 绝对路径:通过给定的路径直接能在我的电脑中找到这个文件. 相对路径:文件相对于应用程序的路径. 2:编码格式 乱码:产生乱码的原因,就是你保存这个文件所采用的编码,跟你打开这个 ...
- C#中FileStream和StreamWriter/StreamReader的区别
首先致谢!转自:http://blog.sina.com.cn/s/blog_67299aec0100snk4.html 本篇可能不是非常深入,但是胜在清晰明了 FileStream对象表示在 ...
- 文件读写(一)利用File静态类 System.IO.FileInfo、DirectoryInfo、DriveInfo
提供用于创建.复制.删除.移动和打开单一文件的静态方法,并协助创建 FileStream 对象. 一.读文件: 1.返回字符串:File.ReadAllText() string readText = ...
- 第31天学习打卡(File类。字符流读写文件)
File类 概念 文件,文件夹,一个file对象代表磁盘上的某个文件或者文件夹 构造方法 File(String pathname) File(String parent,String child) ...
- java中 File文件常用操作方法的汇总
一.IO流: 1.全称为:Input Output---------输入输出流. 输入:将文件读到内存中. 输出:将文件从内存中输出到其他地方. 2.IO技术的作用: 主要是解决设备与设备之间的数据传 ...
- C# 文件读写系列三
1.读写文本文件 在C# 文件读写系列二中列举了相当多的读写文本文件的方法,大致有以下几种: (1).通过静态类File的静态方法来进行文本文件的读写,主要有ReadAllBytes().ReadAl ...
随机推荐
- 基于CAS的SSO(单点登录)实例
第一步 部署CAS-Server(服务端) 1.从CAS官方网站(http://developer.jasig.org/cas/)下载最新版本的CAS-Server(当前最新版本cas-server- ...
- IT行业有前景么?一个10年行内人的6点看法
本人毕业快11年了. 大学读的建筑专业,却在IT行业干了10年. 真心来讲,我非常感谢好兄弟老唐,是他在我迷茫的那两年,领着我踏入了IT行业,也找到了自己的兴趣爱好. 这些年我经常在知乎.博客等地方发 ...
- 转: 【Java并发编程】之二十一:并发新特性—阻塞队列和阻塞栈(含代码)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17511147 阻塞队列 阻塞队列是Java5并发新特性中的内容,阻塞队列的接口是Java. ...
- Banner图二三事
前 言 JRedu 作为一个准前端学员,banner图可是很重要的呢.本人,小白一只,给大家分享几个刚刚学习的基础banner图事件.~~~ 1. 小广告图滚动播放 1.1HTML代码 首先,创 ...
- 团队作业1 团队展示&选题
团队展示&选题 Coding项目地址:https://git.coding.net/wjunren/running.git 一.团队展示 1.队名:Runing Guys 2.队员: 组长:骆 ...
- 201521123004 《Java程序设计》第3周学习总结
1. 本周学习总结 (1)①使用构造函数(constructor) eg:Date now = new Date(); new Date(); //创建了一个Date对象 now是Date类型变量,存 ...
- 201521123020《java程序设计》第1周学习总结
1.本周学习总结 1.对JAVA的历史发展的了解 2.了解Java与C/C++的区别,Java语言所写程序较为繁琐,C/C++较为简洁. 3.安装java和jdk 2.书面作业 Q1.为什么java程 ...
- 201521123007《Java程序设计》第14周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 2. 书面作业 1. MySQL数据库基本操作 建立数据库,将自己的姓名.学号作为一条记录插入.(截图,需出现自 ...
- 201521123045 《JAVA程序设计》 第14周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 2. 书面作业 1. MySQL数据库基本操作 建立数据库,将自己的姓名.学号作为一条记录插入.(截图,需出现自 ...
- 201521123022 《Java程序设计》 第九周学习总结
1.本章学习总结 2. 书面作业 本次PTA作业题集异常 1.常用异常 题目5-1 Q1.1 截图你的提交结果(出现学号) Q1.2 自己以前编写的代码中经常出现什么异常.需要捕获吗(为什么)?应如何 ...