C# 之 读写文件

Posted Now,DayBreak

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 之 读写文件相关的知识,希望对你有一定的参考价值。

1、使用 FileStream 读写文件

  添加命名空间引用:

using System;
using System.Collections.Generic;
using System.Text;
using System.IO;

  读取核心代码:

byte[] byData = new byte[100];
char[] charData = new char[1000];
try
{
    FileStream sFile = new FileStream("文件路径",FileMode.Open);
    sFile.Seek(55, SeekOrigin.Begin);
   //第一个参数是被传进来的字节数组,用以接受FileStream对象中的数据,第2个参数是字节
    // 数组中开始写入数据的位置,它通常是0,表示从数组的开端文件中向数组写数据,
    //最后一个参数规定从文件读多少字符.
    sFile.Read(byData, 0, 100); }
catch (IOException e)
{
    Console.WriteLine("An IO exception has been thrown!");
    Console.WriteLine(e.ToString());
    Console.ReadLine();
    return;
}
Decoder d = Encoding.UTF8.GetDecoder();
d.GetChars(byData, 0, byData.Length, charData, 0);
Console.WriteLine(charData);
Console.ReadLine();

  写入核心代码:

FileStream fs = new FileStream(文件路径,FileMode.Create);
//获得字节数组
byte [] data =new UTF8Encoding().GetBytes(String);
//开始写入
fs.Write(data,0,data.Length);
//清空缓冲区、关闭流
fs.Flush();
fs.Close();

  

2、使用StreamReader和StreamWriter读写文件

  StreamReader 读取文件:

StreamReader objReader = new StreamReader(文件路径);
string sLine="";
ArrayList LineList = new ArrayList(); 
while (sLine != null)
{
    sLine = objReader.ReadLine();
    if (sLine != null&&!sLine.Equals(""))
        LineList.Add(sLine);
}
objReader.Close();
return LineList;

  StreamWriter写文件:

FileStream fs = new FileStream(文件路径,FileMode.Create);   
StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.GetEncoding("GB2312"));//通过指定字符编码方式可以实现对汉字的支持,否则在用记事本打开查看会出现乱码 sw.Flush(); if (checkfile) { sw.BaseStream.Seek(0, SeekOrigin.End);//移动到结尾 } else { sw.BaseStream.Seek(0, SeekOrigin.Begin); } string temp = "随便写点东西"; sw.WriteLine(temp); sw.Flush(); sw.Close();
fs.Close();

 

以上是关于C# 之 读写文件的主要内容,如果未能解决你的问题,请参考以下文章

C# 之 FileStream类介绍

C# 之 FileStream类介绍

《C#零基础入门之百识百例》(九十六)本地数据交互 -- 读写Excel表格文件

C#读取XML文件的基类实现

是否可以动态编译和执行 C# 代码片段?

记录C#常用的代码片段