File.OpenRead(String)是一个内置的File类方法,该方法用于打开现有文件以进行读取。
句法:
public static System.IO.FileStream OpenRead (string path);
参数:该函数接受如下所示的参数:
- path: This is the specified file which is going to be opened for reading.
例外情况:
- ArgumentException:路径是长度为零的字符串,仅包含空格,或者由InvalidPathChars定义的一个或多个无效字符。
- ArgumentNullException:路径为null。
- PathTooLongException:指定的路径,文件名或两者都超过系统定义的最大长度。
- DirectoryNotFoundException:指定的路径无效。
- UnauthorizedAccessException:路径指定目录。或呼叫者没有所需的权限。
- FileNotFoundException:找不到在路径中指定的文件。
- NotSupportedException:路径格式无效。
- IOException:打开文件时发生I / O错误。
返回值:在指定路径上返回只读FileStream。
下面是说明File.OpenRead(String)方法的程序。
程序1:在运行下面的代码之前,将创建一个文件file.txt ,其内容如下所示
在下面的代码中打开文件file.txt进行读取。
C#
// C# program to illustrate the usage
// of File.OpenRead(String) method
// Using System, System.IO and
// System.Text namespaces
using System;
using System.IO;
using System.Text;
class Test {
public static void Main()
{
// Specifying a file
string path = @"file.txt";
// Opening the existing file for reading
using(FileStream fs = File.OpenRead(path))
{
byte[] b = new byte[1024];
UTF8Encoding temp = new UTF8Encoding(true);
while (fs.Read(b, 0, b.Length) > 0) {
// Printing the file contents
Console.WriteLine(temp.GetString(b));
}
}
}
}
C#
// C# program to illustrate the usage
// of File.OpenRead(String) method
// Using System, System.IO and
// System.Text namespaces
using System;
using System.IO;
using System.Text;
class GFG {
public static void Main()
{
// Specifying a file
string path = @"file.txt";
// Opening the file for overwriting with
// another contents
using(FileStream fs = File.OpenWrite(path))
{
Byte[] info = new UTF8Encoding(true).GetBytes("GFG is a CS portal.");
fs.Write(info, 0, info.Length);
}
// Opening the existing file for reading
using(FileStream fs = File.OpenRead(path))
{
byte[] b = new byte[1024];
UTF8Encoding temp = new UTF8Encoding(true);
while (fs.Read(b, 0, b.Length) > 0) {
// Printing the file contents
Console.WriteLine(temp.GetString(b));
}
}
}
}
执行中:
GeeksforGeeks
程序2:最初,将创建一个文件file.txt ,其内容如下所示-
下面的代码将用其他指定的内容覆盖文件内容,然后将打印最终内容。
C#
// C# program to illustrate the usage
// of File.OpenRead(String) method
// Using System, System.IO and
// System.Text namespaces
using System;
using System.IO;
using System.Text;
class GFG {
public static void Main()
{
// Specifying a file
string path = @"file.txt";
// Opening the file for overwriting with
// another contents
using(FileStream fs = File.OpenWrite(path))
{
Byte[] info = new UTF8Encoding(true).GetBytes("GFG is a CS portal.");
fs.Write(info, 0, info.Length);
}
// Opening the existing file for reading
using(FileStream fs = File.OpenRead(path))
{
byte[] b = new byte[1024];
UTF8Encoding temp = new UTF8Encoding(true);
while (fs.Read(b, 0, b.Length) > 0) {
// Printing the file contents
Console.WriteLine(temp.GetString(b));
}
}
}
}
执行中:
GFG is a CS portal.