【实例9】读取 F 盘 code 文件夹下 test.txt 文件中的信息。
根据题目要求,先在 F 盘下创建文件夹并创建 test.txt 文件,然后写入两行字符,分别是 apple 和 pear,代码如下。
class Program
{
static void Main(string[] args)
{
//定义文件路径
string path = @"F:\\code\\test.txt";
//创建StreamReader类的实例
StreamReader streamReader = new StreamReader(path);
//判断文件中是否有字符
while (streamReader.Peek() != -1)
{
string str = streamReader.ReadLine();
Console.WriteLine(str);
}
//关闭流
streamReader.Close();
}
}
【实例10】向 F 盘 code 文件夹的 test.txt 文件中写入姓名和手机号码。
class Program
{
static void Main(string[] args)
{
string path = @"F:\\code\\test.txt";
//创建StreamWriter 类的实例
StreamWriter sw = new StreamWriter(path);
//向文件中写入姓名
sw.WriteLine("小张");
//向文件中写入手机号
sw.WriteLine("12345678901");
//刷新缓存
sw.Flush();
//关闭流
sw.Close();
}
}
【实例 11】在 F 盘 code 文件夹的 student.txt 文件中写入学生的学号信息。
class Program
{
static void Main(string[] args)
{
//定义文件路径
string path = @"F:\\code\\student.txt";
//创建 FileStream 类的实例
FileStream fileStream =new FileStream(path,FileMode.OpenOrCreate,FileAccess.ReadWrite,FileShare.ReadWrite);
//定义学号
string msg = "123456";
//将字符串转换为字节数组
byte[] bytes = System.Text.Encoding.UTF8.GetBytes(msg);
//向文件中写入字节数组
fileStream.Write(bytes, 0, bytes.Length);
//刷新缓冲区
fileStream.Flush();
//关闭流
fileStream.Close();
}
}
【实例 12】从 F 盘的 code 文件夹中将 student.txt 文件中的学号读取出来,并显示到控制台上。
class Program
{
static void Main(string[] args)
{
//定义文件路径
string path = @"F:\\code\\student.txt";
//判断是否含有指定文件
if(File.Exists(path))
{
FileStream fileStream =new FileStream(path,FileMode.Open,FileAccess.Read);
byte[] bytes = new byte[fileStream.Length];
//读取文件信息
fileStream.Read(bytes, 0, bytes.Length);
//将得到的字节型数组重写编码为字符型数组
char [] c =System.Text.Encoding.UTF8.GetChars(bytes);
Console.WriteLine("学生的学号为:");
//输出学生的学号
Console.WriteLine(c);
//关闭流
fileStream.Close();
}
}
}
【实例 13】将 test.txt 记事本中的内容读取到字节数组中。
class Program
{
static void Main(string[] args)
{
FileStream fileStream = new FileStream(@"F:\\code\\test.txt", FileMode.Open, FileAccess.Read);
BinaryReader binaryReader = new BinaryReader(fileStream);
//获取文件长度
long length =fileStream.Length;
byte[] bytes = new byte[length];
//读取文件中的内容并保存到字节数组中
binaryReader.Read(bytes, 0, bytes.Length);
//将字节数组转换为字符串
string str = Encoding.UTF8.GetString(bytes);
Console.WriteLine(str);
fileStream.Close();
}
}
【实例14】在 F 盘 code 文件夹的 test.txt 文件中写入图书的名称和价格,使用 BinaryReader 类读取写入的内容。
class Program
{
static void Main(string[] args)
{
FileStream fileStream = new FileStream(@"F:\\code\\test.txt", FileMode.Open, FileAccess.Write);
//创建二进制写入流的实例
BinaryWriter binaryWriter = new BinaryWriter(fileStream);
//向文件中写入图书名称
binaryWriter.Write("c#基础教程");
//向文件中写入图书价格
binaryWriter.Write(49.5);
//清除缓冲区的内容,将缓冲区中的内容写入到文件中
binaryWriter.Flush();
//关闭二进制流
binaryWriter.Close();
//关闭文件流
fileStream.Close();
fileStream = new FileStream(@"F:\\code\\test.txt", FileMode.Open, FileAccess.Read);
//创建二进制读取流的实例
BinaryReader binaryReader = new BinaryReader(fileStream);
//输出图书名称
Console.WriteLine(binaryReader.ReadString());
//输出图书价格
Console.WriteLine(binaryReader.ReadDouble());
//关闭二进制读取流
binaryReader.Close();
//关闭文件流
fileStream.Close();
}
}