using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 文件操作
{
class Program
{
staticvoid Main(string[] args)
{
FileInfo fileInfo = new FileInfo("TextFile1.txt");//参数为文件路径(此例子为相对路径),FileInfo的命名空间为System.IO
Console.WriteLine(fileInfo.Exists);//判断该文件是否存在
Console.WriteLine(fileInfo.Name);//得到文件名
Console.WriteLine(fileInfo.Length);//得到文件的字节
Console.WriteLine(fileInfo.Directory);//得到文件路径
Console.WriteLine(fileInfo.IsReadOnly);//判断文件是否只读string[] strArray = File.ReadAllLines("TextFile1.txt");//把文件里每一行读成一个字符串foreach (var str in strArray)
{
Console.WriteLine(str);
}
}
}
}
第二种方式:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 文件操作
{
class Program
{
staticvoid Main(string[] args)
{
//1.创建文件流用来操作文件
FileStream stream = new FileStream("TextFile1.txt",FileMode.Open);//参数为文件路径,打开方式////2.读取或者写入数据byte[] data = newbyte[1024];
int length = stream.Read(data, 0, data.Length);//读取字节文件
stream.Colse();//关闭流string str = Encoding.UTF8.GetString(data);// 字节向字符串转化
Console.WriteLine(str);//输出
}
}
}
第三种方式:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 文件操作
{
class Program
{
staticvoid Main(string[] args)
{
//创建文本文件读取流
StreamReader reader = new StreamReader("TextFile1.txt");//参数为文件路径string str = reader.ReadLine();//执行一次读取一行,末尾返回空string str = reader.ReadToEnd();//读取文本中所有的内容char c = (char)reader.Read();//读取一个字符,结尾返回-1
reader.Close();//关闭流
Console.WriteLine(c);
//文本文件写入流
StreamWriter writer = new StreamWriter("textFile2.txt");//如果文件存在就会被覆盖while (true)
{
string message = Console.ReadLine();//接收控制台的输入if (message == "q")
{
break;
}
writer.WriteLine(message);//写入文件的某一行
}
writer.Close();
Console.ReadKey();
}
}
}