如何以只读模式打开文本文件意味着我无法执行写入操作

本文关键字:执行 操作 意味着 文件 只读 模式 文本 | 更新日期: 2023-09-27 18:23:38

我尝试了太多时间,但无法实现目标。文件已打开,但已在写入模式下打开。

代码-在txtpath.text中,我正在传递文本的路径:

System.IO.FileInfo fileObj= new System.IO.FileInfo(txtPath.Text);
fileObj.Attributes = System.IO.FileAttributes.ReadOnly;
System.Diagnostics.Process.Start(fileObj.FullName);

如何以只读模式打开文本文件意味着我无法执行写入操作

使用File.OpenRead方法

 string sFilename = "myfile.txt";
 FileStream SR = File.OpenRead(sFilename);

打开文件只读取其内容:

    // Open the stream and read it back.
    using (FileStream fs = File.OpenRead(path)) 
    {
        byte[] b = new byte[1024];
        UTF8Encoding temp = new UTF8Encoding(true);
        while (fs.Read(b,0,b.Length) > 0) 
        {
            Console.WriteLine(temp.GetString(b));
        }
    }

有关File.OpenRead的详细信息:http://msdn.microsoft.com/en-us/library/system.io.file.openread.aspx

设置文件的ReadOnly属性并执行:

File.SetAttributes(txtPath.Text, File.GetAttributes(txtPath.Text) | FileAttributes.ReadOnly);
System.Diagnostics.Process.Start(txtPath.Text);