這個問題已被問了很多次,但我不確定我是否找到正確的答案,這將是「這是不可能的」。每次我聽到一些事情都是不可能的,我不確定它是否屬實。我的意思是不知何故就有了解決辦法。C#讀取完全鎖定或讀取輸出以外的文本文件,如果語句
所以這是我的事情。我正在研究C#應用程序,它在某些時候應該讀取要在我的代碼中使用的.txt文件。問題是一個C++文件不斷寫入這個文件。我沒有這個項目的來源。
根據我的理解,即使鎖定了文件,也有幾種讀取文件的方法。問題是我試了一下。 (使用ReadWrite,Read,Write,Delete等)。似乎沒有任何成功。它看起來像文件被一切手段鎖定。
所以我的問題再一次,是真的有可能沒有辦法讀取文本文件,如果它被其他應用程序完全鎖定,我沒有來源?有沒有辦法?
如果不存在以下情況。應用程序本身打印出我想要從txt文件中讀出的完全相同的信息。所以我想,爲什麼不直接從應用程序讀取它。問題在於,我不知道如何在「if」語句之外做到這一點。
例如我的代碼是:
if (wname.Length)
{
Process compiler = new Process();
compiler.StartInfo.FileName = fn;
compiler.StartInfo.WorkingDirectory = wd;
compiler.StartInfo.UseShellExecute = false;
compiler.StartInfo.RedirectStandardOutput = true;
compiler.StartInfo.CreateNoWindow = true;
compiler.Start();
}
什麼,我想這樣做以後是:
string result = compiler.StartInfo.ReadToEnd();
從來沒有少,這是不可能的,因爲「名「編譯器'在當前上下文中不存在「。
失去IF語句是不可能的。任何解決方案?
在此先感謝。
只需在if範圍外創建'compiler'對象。 –
此外 - 看起來你有兩個不同的問題在這裏 - 一個 - 具體關於你得到的錯誤,第二個關於如何讀取其他文件.. –