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 ...
随机推荐
- 根据本周本月本日来查询数据 C#winform数据查询
这个我是在winform的页面上做的 1. 首先是在页面上添加3个lable 第一次点击lable会有相应的数据被查询出来 第二次点击同一个lable会刷新所有的数据 2.点击不同的label会 ...
- Log4j配置详解及不同的包(package)下的日志写入到不同的日志文件下
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt262 以下都是log4j.properties要写入的内容: 一:参数介绍: ...
- PS各个工具的字母快捷键和英…
原文地址:PS各个工具的字母快捷键和英文全名作者:Tycho 选框-Marquee(M) 移动-move(V) 套索-Lasso(L) 魔棒-Wand(W) 喷枪-in ...
- 201521123007《Java程序设计》第8周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 2. 书面作业 本次作业题集集合 1. List中指定元素的删除(题目4-1) private static ...
- 201521123106 《Java程序设计》第7周学习总结
1. 本章学习总结 2. 书面作业 Q1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 答: ArrayList的contains源代码为: public boo ...
- 201521123033《Java程序设计》第4周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. answer: 1.2 使用常规方法总结其他上课内容. answer:学了继承以及各种关键字 2. 书面作业 1.注释的应用 使用类 ...
- 201521123022 《Java程序设计》 第十一周学习总结
1.本章学习总结 2.书面作业 本次PTA作业题集多线程 Q1.互斥访问与同步访问 完成题集4-4(互斥访问)与4-5(同步访问 Q1.1 除了使用synchronized修饰方法实现互斥同步访问,还 ...
- 关于APP在小米5s第一次安装启动后,点击home返回桌面,再次进入重进闪屏页问题
现象 今天工作中,在对公司产品进行测试的时候,程序员小哥点出了一个问题.问题点出的步骤是这样的: 1.安装APP 2.点击打开 3.经过闪屏页,进入主页后,点击HOME键 4.再次进入程序会重新进入闪 ...
- Java多线程高并发学习笔记(一)——Thread&Runnable
进程与线程 首先来看百度百科关于进程的介绍: 进程是一个具有独立功能的程序关于某个数据集合的一次运行活动.它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体.它不只是程序的代码,还包括当前的 ...
- 在dropwizard中使用feign,使用hystrix
前言 用惯了spring全家桶之后,试试dropwizard的Hello World也别有一帆风味.为了增强对外访问API的能力,需要引入open feign.这里简单在dropwizard中使用fe ...