欢迎来到代码驿站!

.NET代码

当前位置:首页 > 软件编程 > .NET代码

C#使用StreamReader和StreamWriter类读写操作文件

时间:2022-07-31 09:18:17|栏目:.NET代码|点击:

StreamReader 类 (System.IO) | Microsoft 官方文档

StreamWriter 类 (System.IO) | Microsoft 官方文档

一、文本读写类:

TextReader/TextWriter:文本读写,抽象类

1、TextReader文本读,其派生类:

  • StreamReader:以一种特定的编码从字节流中读取字符。
  • StringReader:从字符串读取。

2、TextWriter文本写,其派生类:

  • StreamWriter:以一种特定的编码向流中写入字符。
  • StringWriter:将信息写入字符串, 该信息存储在基础 StringBuilder 中。
  • IndentedTextWriter:提供可根据 Tab 字符串标记缩进新行的文本编写器。
  • HttpWriter:提供通过内部 TextWriter 对象访问的 HttpResponse 对象。
  • HtmlTextWriter:将标记字符和文本写入 ASP.NET 服务器控件输出流。 此类提供 ASP.NET 服务器控件在向客户端呈现标记时使用的格式化功能。

二、StreamReader类,读文件

1、实例:

构造函数:默认编码为UTF-8

StreamReader srAsciiFromFile =  new StreamReader("C:\\Temp\\Test.txt", System.Text.Encoding.ASCII);
StreamReader srAsciiFromStream = new StreamReader( (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),System.Text.Encoding.ASCII);

1、从文件读取文本 Read(),Peek()

using (StreamReader sr = new StreamReader(path))
{
    while (sr.Peek() >= 0)
    {
        Console.Write((char)sr.Read());
    }
}

2、调用其ReadAsync()方法以异步方式读取文件。

static async Task Main()
{
    await ReadAndDisplayFilesAsync();
}

static async Task ReadAndDisplayFilesAsync()
{
    String filename = "C:\\s.xml";
    Char[] buffer;

    using (var sr = new StreamReader(filename))
    {
        buffer = new Char[(int)sr.BaseStream.Length];
       await sr.ReadAsync(buffer, 0, (int)sr.BaseStream.Length);
    }

    Console.WriteLine(new String(buffer));
}

3、读取一行字符。ReadLine()

using (StreamReader sr = new StreamReader("TestFile.txt"))
{
    string line;
    // Read and display lines from the file until the end of the file is reached.
    while ((line = sr.ReadLine()) != null)
    {
        Console.WriteLine(line);
    }
}

4、读取到一个操作中的文件的末尾。ReadToEnd()

using (StreamReader sr = new StreamReader(path))
{
    Console.WriteLine(sr.ReadToEnd());
}

三、StreamWriter类,写文件

实例:

StreamWriter类允许直接将字符和字符串写入文件

//保留文件现有数据,以追加写入的方式打开d:\file.txt文件
using (StreamWriter sw = new StreamWriter(@"d:\file.txt", true)) //true 表示追加
{
    //向文件写入新字符串,并关闭StreamWriter
    sw.WriteLine("Another File Operation Method");
}

上一篇:C#用websocket实现简易聊天功能(服务端)

栏    目:.NET代码

下一篇:C#实现给Word每一页设置不同图片水印

本文标题:C#使用StreamReader和StreamWriter类读写操作文件

本文地址:http://www.codeinn.net/misctech/209403.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有