zoukankan      html  css  js  c++  java
  • C#IO读写txt文件的两种方法

    FileStream
    StreamReader/StreamWriter

    1.添加命名空间

      System.IO;

      System.Text;

    2.文件的读取

      (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);
         file.Read(byData, 0, 100); 
         //byData传进来的字节数组,用以接受FileStream对象中的数据,第2个参数是字节数组中开始写入数据的位置,它通常是0,
         //表示从数组的开端文件中向数组写数据,最后一个参数规定从文件读多少字符.
         Decoder d = Encoding.Default.GetDecoder();
         d.GetChars(byData, 0, byData.Length, charData, 0);
         Console.WriteLine(charData);
         file.Close();
        }
       catch (IOException e)
       {
          Console.WriteLine(e.ToString());
       }
    }

      (2).使用StreamReader读取文件,然后一行一行的输出。

    public void Read(string path){
        StreamReader sr = new StreamReader(path,Encoding.Default);
        String line;
        while ((line = sr.ReadLine()) != null) {
         Console.WriteLine(line.ToString());
        }
    }

    3.文件的写入
    (1).使用FileStream类创建文件,然后将数据写入到文件里。

    public void Write(){
       //FileMode.Append为不覆盖文件效果.create为覆盖
       FileStream fs = new FileStream("E:\\ak.txt", FileMode.Create);
       //获得字节数组
       byte[] data = System.Text.Encoding.Default.GetBytes("Hello World!"); 
       //开始写入
       fs.Write(data, 0, data.Length);
       //清空缓冲区、关闭流
       fs.Flush();
       fs.Close();
    }

      (2).使用FileStream类创建文件,使用StreamWriter类,将数据写入到文件。

    public void Write(string path)
    {
       FileStream fs = new FileStream(path, FileMode.Create);
       StreamWriter sw = new StreamWriter(fs);
       //开始写入
       sw.Write("Hello World!!!!");
       //清空缓冲区
       sw.Flush();
       //关闭流
       sw.Close();
       fs.Close();
    }

    以上就完成了,txt文本文档的数据读取与写入。

  • 相关阅读:
    SVN cleanup操作反复失败解决办法
    mysql常用命令之-用户密码修改
    properties 配置文件中值换行的问题
    在每一行行尾添加内容
    Java 毫秒转换为日期类型、日期转换为毫秒
    SimpleDateFormat 12小时制以及24小时制的写法
    java校验时间格式 HH:MM
    ClassLoader 详解及用途(写的不错)
    ObjectInputStream类和ObjectInputStream类的使用
    logback 详解
  • 原文地址:https://www.cnblogs.com/grj001/p/12224820.html
Copyright © 2011-2022 走看看