执行文件操作是程序员生活中不可或缺的一部分,所有编程语言都提供各种库或函数来实现相同的目的。在 C# 中,可以使用 File 类提供程序中提供的方法完成相同的操作。一般从文件读取是使用ReadAllText(file)和ReadAllLines(file)两个方法,其中file表示需要读取的文件。还可以使用 Streamreader 以字节形式读取文件。本文将详细介绍 C# 中可用于读取文件的各种方法以及适当的示例。
语法:
ReadAllText() 具有以下语法
public static string ReadAllText (String Path, System.Text.Encoding encoding)
ReadAllLines() 具有以下语法
public static string ReadAllLines(String, Encoding)
此方法读取文件中存在的所有行,然后将它们存储在字符串中,然后关闭文件。
该方法的返回类型是一个字符串,包含文件中的所有内容。此方法在 System.IO 命名空间中可用,与此方法关联的程序集是 mscorlib.dll。
与 ReadAllLines() 方法的 ReadAllText() 相关的异常:
以下是下面提到的以下示例。
代码:
using System; using System.IO; using System.Text; namespace ReadAllText { class Test { static void Main(string[] args) { var Fpath= @"C:\Vignesh\KB.txt"; string content = File.ReadAllText(Fpath, Encoding.UTF8); Console.WriteLine(content); } } }
输出:
代码:
using System; using System.IO; using System.Text; namespace ReadAllLines { class Test { static void Main(string[] args) { var inputfile = @"C:\Vignesh\append.txt"; string[] output = File.ReadAllLines(inputfile, Encoding.UTF8); foreach (string op in output) { Console.WriteLine(op); } } } }
输出:
1。 StreamReader.ReadToEnd(): 该方法用于从当前位置读取文件到流末尾。该方法对应的命名空间是System.Io,程序集是mscorblib.dll。
语法:
public override string ReadToEnd ();
输入参数:此方法不需要任何输入参数。
返回:此方法将文件内容作为流输出,如果当前位置设置为文件的最后一个字符,则返回空字符串。
2。 StreamReader.ReadLine(): 此方法从当前流中读取字符并将数据作为字符串发送到输出。该方法对应的命名空间是System.Io,程序集是mscorblib.dll。
语法:
public override string ReadLine();
输入参数:此方法不需要任何输入参数。
返回:返回当前流的下一行,如果当前流位于最后一行位置则返回 null。
代码:
using System; using System.IO; using System.Text; class Program { static void Main(string[] args) { var FP = @"C:\Vignesh\Names.txt"; using var fstre = new FileStream(FP, FileMode.Open, FileAccess.Read); using var sree = new StreamReader(fstre, Encoding.UTF8); string Fcontent = sree.ReadToEnd(); Console.WriteLine(Fcontent); } }
输出:
代码:
using System; using System.IO; using System.Text; class Program { static void Main(string[] args) { var filpath = @"C:\Vignesh\TimerJob-2019-08-09.txt"; using var fstre = new FileStream(filpath, FileMode.Open, FileAccess.Read); using var sreee = new StreamReader(fstre, Encoding.UTF8); string cline = String.Empty; while ((cline = sreee.ReadLine()) != null) { Console.WriteLine(cline); } } }
输出:
代码:
using System; using System.IO; namespace testclass { class Test { string FPath = @ "C:\Vignesh\Script to 0365 connection.txt"; static void Main(string[] args) { //Check if file is there at the path //ReadallOutput() if (File.Exists(FPath)) { string output = File.ReadAlloutput(FPath); Console.WriteLine(output); } //Check if file is there at the path if (File.Exists(FPath)) { //ReadallLines() string[] Flines = File.ReadAllFlines(FPath); foreach(string line in Flines) Console.WriteLine(line); } //Check if file is there at the path if (File.Exists(FPath)) { //using streamreader using(StreamReader file = new StreamReader(FPath)) { int counter = 0; string lgth; while ((lgth = file.ReadLine()) != null) { Console.WriteLine(lgth); counter++; } file.Close(); } } Console.ReadKey(); } } }
输出:
代码:
using System; using System.IO; using System.Text; using System.Threading.Tasks; class TestProgram { static async Task Main(string[] args) { var ip = @" C:\Vignesh\Patching\Patching Steps.txt"; using var fssss = new FileStream(ip, FileMode.Open, FileAccess.Read); using var srrr = new StreamReader(fssss, Encoding.UTF8); //Reading asynchronously string op = await srrr.ReadToEndAsync(); Console.WriteLine(op); } }
输出:
因此,本文详细介绍了 C# 中的读取文件功能。它解释了可用于执行该操作的各种方法。它还涵盖了与每种方法相关的各种参数和异常,并结合示例程序的示例进行了详细解释。为了更详细地介绍,建议编写示例程序并进行练习。
以上是C# 读取文件的详细内容。更多信息请关注PHP中文网其他相关文章!