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, 0, 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, 0, data.Length);
}
//读文件
using (FileStream fileStream = new FileStream(path, FileMode.Open))
{
    byte[] data = new byte[fileStream.Length];
    fileStream.Read(data, 0, 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, 0, data.Length);
    string result = new String(data);
    //do something...
}

#endregion
时间: 2024-10-23 14:22:06

File FileStream StreamWriter StreamReader文件读写操作方法的相关文章

.net学习笔记--文件读写的几种方式

在.net中有很多有用的类库来读写硬盘上的文件 一般比较常用的有: File:1.什么时候使用:当读写件大小不大,同时可以一次性进行读写操作的时候使用         2.不同的方式可以读写文件类型不一样. ReadAllBytes()  WriteAllByte():可以读写任意类型的文件 (里面封装的是FileStream)           ReadAllLines()  ReadAllText():(里面封装是StreamWriter,StreamReader),只能读写文本类型文件

.net实现文件读写的几种常用方法

文件的读写是.net中常用的功能,本文即以实例形式展示.net实现文件读写的几种常用方法,供大家参考之用.具体如下: 在.net中有很多有用的类库来读写硬盘上的文件,一般比较常用的有: File: 1.什么时候使用:当读写件大小不大,同时可以一次性进行读写操作的时候使用 2.不同的方式可以读写文件类型不一样. ReadAllBytes()  WriteAllByte():可以读写任意类型的文件 (里面封装的是FileStream) ReadAllLines()  ReadAllText():(里

File FileStream StreamReader StreamWriter C#

存在各种各样的IO设备,比如说文件File类(字符串文件和二进制文件),可以直接使用File类对文件进行读写操作. 这些各种IO的读取和写入是通过流的形式实现的,基类为Stream,针对各种不同的IO设备,就有FileStream,MemoryStream. FileStream可以实现任意格式,任意大小文件的读取,但是它的方法只能读取字节,不能直接读取读字符串或读一行等等,操作偏底层. 各种流的专用读写类Reader和Writer,主要用于方便读写文本和字符串,这些类中不仅可以用来读取字节,也

C#中FileStream和StreamWriter/StreamReader的区别

首先致谢!转自:http://blog.sina.com.cn/s/blog_67299aec0100snk4.html 本篇可能不是非常深入,但是胜在清晰明了 FileStream对象表示在磁盘或网络路径上指向文件的流.这个类提供了在文件中读写字节的方法,但经常使用StreamReader或 StreamWriter执行这些功能.这是因为FileStream类操作的是字节和字节数组,而Stream类操作的是字符数据.这是这两种类的一个重要区别,如果你是准备读取byte数据的话,用StreamR

Python:file/file-like对象方法详解【单个文件读写】

IO中读写文件操作方法汇总!----The_Third_Wave的学习笔记! 本文由@The_Third_Wave(Blog地址:http://blog.csdn.net/zhanh1218)原创.不定期更新,有错误请指正. Sina微博关注:@The_Third_Wave 如果这篇博文对您有帮助,为了好的网络环境,不建议转载,建议收藏!如果您一定要转载,请带上后缀和本文地址. class file(object) |  file(name[, mode[, buffering]]) -> fi

Android数据存储——文件读写操作(File)

Android文件读写操作 一.文件的基本操作 Android中可以在设备本身的存储设备或外接的存储设备中创建用于保存数据的文件.在默认状态下,文件是不能在不同程序间共享的. 当用户卸载您的应用程序时,这些文件删除. 文件存储数据可以通过openFileOutput方法打开一个文件(如果这个)文件不存在就自动创建这个文件),通过load方法来获取文件中的 数据,通过deleteFile方法删除一个指定的文件. 1,常用方法介绍: File是通过FileInputStream和FileOutput

C#文件读写常用类介绍

首先要熟悉.NET中处理文件和文件夹的操作.File类和Directory类是其中最主要的两个类.了解它们将对后面功能的实现提供很大的便利.      本节先对和文件系统相关的两个.NET类进行简要介绍.  System.IO.File类和System.IO.FileInfo类主要提供有关文件的各种操作,在使用时需要引用System.IO命名空间.下面通过程序实例来介绍其主要属性和方法.  (1) 文件打开方法:File.Open () 该方法的声明如下: public static FileS

Unity3D文件读写

这里主要是简单的文件读写,不推荐使用,最好用的还是PlayerPrefs. using UnityEngine; using System.Collections; using System.IO; public class MyFile : MonoBehaviour { public static bool IsActivated; public static int UserMoney; private static string filePath; void Start () { //不

C# txt文件读写

//读取文件内容 (1).使用FileStream类进行文件的读取,并将它转换成char数组,然后输出. byte[] byData = new byte[100]; char[] charData = new char[1000]; public void Read() { try { FileStream file = new FileStream("E:\\test.txt", FileMode.Open); file.Seek(0, SeekOrigin.Begin); fil