C#中的File.ReadAllBytes()方法
File.ReadAllBytes()是C#中一个用于读取文件的静态方法,作用是返回读取文件中的所有字节数组,可以在不用打开文件的情况下读取文件中的数据。
使用方法
该方法的使用方法如下:
byte[] bytes = File.ReadAllBytes(文件路径);
在这个方法中,需要传入文件的完整路径作为参数,该方法返回一个字节数组,包含了读取的文件的所有内容,即使文件中包含了非文本数据(例如图片、音频等)也可以用该方法读取。
实例说明
实例1:读取文本文件
例如,我们需要读取一个文本文件中的内容,可以使用如下代码:
using System;
using System.IO;
class Program
{
static void Main()
{
string filePath = @"C:\Users\username\Desktop\sample.txt";
byte[] bytes = File.ReadAllBytes(filePath);
string content = System.Text.Encoding.Default.GetString(bytes);
Console.WriteLine(content);
Console.ReadKey();
}
}
以上代码中,首先需要注意的是文件路径的正确性,其次是返回值所得到的字节数组需要用System.Text.Encoding.Default.GetString()方法转化为文本格式,这一点尤其需要注意。
实例2:读取二进制文件
再例如,我们需要读取一个二进制文件中的内容,可以使用如下代码:
using System;
using System.IO;
class Program
{
static void Main()
{
string filePath = @"C:\Users\username\Desktop\sample.bin";
byte[] bytes = File.ReadAllBytes(filePath);
foreach(byte b in bytes)
{
Console.Write(b.ToString("X2") + " ");
}
Console.ReadKey();
}
}
以上代码中的文件路径需要修改为实际需要使用的路径,它读取的是sample.bin文件的内容,并使用foreach循环输出每个字节的十六进制格式的值。
结论
通过以上的实例说明,我们可以得出结论:File.ReadAllBytes()方法可以让我们方便地读取文件中包含的所有内容,无论是文本内容还是二进制数据都可以用该方法读取,并返回一个字节数组。