C# में कैसे जाँचें कि फ़ाइल किसी अन्य प्रक्रिया द्वारा उपयोग की जा रही है?
सभी को नमस्ते। मैं C# में नया हूँ और फ़ाइलों के साथ काम करते समय एक समस्या का सामना कर रहा हूँ। मुझे प्रोग्रामेटिक रूप से टेक्स्ट फ़ाइलों को पढ़ने के लिए खोलना है, लेकिन कभी-कभी वे किसी अन्य प्रोग्राम (जैसे नोटपैड या Excel) में पहले से खुली होती हैं। ऐसे मामलों में, मेरा एप्लिकेशन `IOException` प्रकार के अपवाद और "The process cannot access the file because it is being used by another process" संदेश के साथ क्रैश हो जाता है।
यहाँ मेरे कोड का एक उदाहरण है:
```csharp
string filePath = @"C:\Data\report.txt";
try
{
string content = File.ReadAllText(filePath);
Console.WriteLine(content);
}
catch (IOException ex)
{
Console.WriteLine($"त्रुटि: {ex.Message}");
}
```
समस्या यह है कि मैं केवल अपवाद को पकड़ रहा हूँ, लेकिन मैं पहले से जानना चाहता हूँ कि फ़ाइल व्यस्त है या नहीं, और या तो इसके मुक्त होने की प्रतीक्षा करूँ या उपयोगकर्ता को सूचित करूँ।