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

时间:2012-02-08 07:36:30

标签: c# asp.net .net

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

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

System.IO.FileInfo fileObj= new System.IO.FileInfo(txtPath.Text);

fileObj.Attributes = System.IO.FileAttributes.ReadOnly;

System.Diagnostics.Process.Start(fileObj.FullName);

2 个答案:

答案 0 :(得分:2)

使用File.OpenRead方法

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

答案 1 :(得分:1)

打开文件只读取内容:

    // 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);