C#实现文件读写

时间:2021-09-06 21:25:41

小结文件读写操作(记得引入 system.IO 和 system.Text 哦)

 


1、使用FileStream类创建文件,讲数据写入文件---fileWriter1()

2、使用filestream类创建文件,使用streamwriter写入文件---fileWriter2()

3、使用filestream类进行文件的读取,并将它转换成char数组,然后输出---fileReader1()

4、使用StreamReader读取文件,然后一行一行的输出---fileReader2()

 

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Text;

using System.IO;




namespaceConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

//分别取消下面的注释可以试一试哦


//fileWriter1();

//fileWriter2();

//fileReader1();

//fileReader2();



Console.ReadLine();



}



#region 创建文件,写入数据

/// <summary>

/// 使用FileStream类创建文件,讲数据写入文件

/// </summary>

public void fileWriter1()

{

FileStream fs = newFileStream("D:\\temp1.txt", FileMode.Create);

Byte[] data =System.Text.Encoding.Default.GetBytes("hello,world!");

fs.Write(data, 0, data.Length);

//清空缓冲区内容

fs.Flush();

//关闭流

fs.Close();

}



/// <summary>

/// 使用filestream类创建文件,使用streamwriter写入文件

/// </summary>

public static void fileWriter2()

{

FileStream fs = newFileStream("D:\\temp2.txt", FileMode.Create);

StreamWriter sw = newStreamWriter(fs);

sw.WriteLine("hello,world!");



//清空缓冲区内容

sw.Flush();

//关闭流

sw.Close();

fs.Close();

}

#endregion



#region 从文件读取数据



/// <summary>

/// 使用filestream类进行文件的读取,并将它转换成char数组,然后输出

/// </summary>

public static void fileReader1()

{

//定义byte/char数组

Byte[] byData = new Byte[100];

Char[] charData = new Char[1000];

//使用try/catch

try

{

//创建文件流(打开文件)

FileStream fs = newFileStream("D:\\temp.txt", FileMode.Open);

//查找文件内容

fs.Seek(0, SeekOrigin.Begin);

//读取文件内容

fs.Read(byData, 0,byData.Length);

//初始化Decoder

Decoder d =Encoding.Default.GetDecoder();

//将读取出的内容从byte-->char

d.GetChars(byData, 0,byData.Length, charData, 0);

//打印内容

Console.WriteLine(charData);

//关闭文件流

fs.Close();



}

catch (IOException ex)

{

Console.WriteLine(ex.ToString());

}



}



/// <summary>

/// 使用StreamReader读取文件,然后一行一行的输出

/// </summary>

public static void fileReader2()

{

//创建StreamReader

StreamReader sr = newStreamReader("D:\\temp2.txt", Encoding.Default);

//创建变量line

string line;

//while判断,不为空时一行一行打印

while ((line = sr.ReadLine()) !=null)

{

Console.WriteLine(line);

}



#endregion

}

}

}