C# में फ़ाइल सिस्टम के साथ काम करना: शुरुआती लोगों के लिए
\n\nफ़ाइल सिस्टम के साथ काम करना किसी भी डेवलपर के लिए एक प्रमुख कौशल है। C# (.NET) में फ़ाइलों और निर्देशिकाओं को बनाने, पढ़ने, लिखने और हटाने के लिए शक्तिशाली उपकरण उपलब्ध हैं। इस लेख में, हम फ़ाइल सिस्टम के बुनियादी संचालनों को समझेंगे जो शुरुआती और अनुभवी प्रोग्रामर दोनों के लिए उपयोगी होंगे। सभी उदाहरण C# में लिखे गए हैं और System.IO नाम स्थान का उपयोग करते हैं।
System.IO नाम स्थान के साथ काम करने की मूल बातें
\n\nSystem.IO नाम स्थान में फ़ाइल सिस्टम के साथ बातचीत करने के लिए सभी मुख्य वर्ग शामिल हैं। काम शुरू करने के लिए, अपनी फ़ाइल की शुरुआत में निम्नलिखित निर्देश जोड़ें:
using System.IO;\nusing System; // Console और अन्य बुनियादी संचालनों के लिए\n\nहम जिन मुख्य वर्गों का उपयोग करेंगे:
\n- \n
File— फ़ाइलों के साथ काम करने के लिए स्थिर विधियाँ (निर्माण, प्रतिलिपि, हटाना)। \n FileInfo— किसी विशिष्ट फ़ाइल के बारे में जानकारी प्राप्त करने के लिए इंस्टेंस वर्ग। \n Directory— फ़ोल्डरों के साथ काम करने के लिए स्थिर विधियाँ। \n DirectoryInfo— निर्देशिका के बारे में जानकारी के लिए इंस्टेंस वर्ग। \n Path— पथों के साथ काम करने के लिए उपयोगिताएँ। \n
आइए व्यवहार में प्रत्येक पहलू पर विचार करें।
\n\nफ़ाइल बनाना और उसमें लिखना
\n\nफ़ाइल बनाने और उसमें टेक्स्ट लिखने का सबसे सरल तरीका File.WriteAllText विधि का उपयोग करना है। यह एक फ़ाइल बनाता है (या मौजूदा फ़ाइल को ओवरराइट करता है) और एक स्ट्रिंग लिखता है।
string path = @"C:\\Temp\\example.txt";\nstring content = "नमस्ते, दुनिया! यह एक परीक्षण फ़ाइल है।";\n\nFile.WriteAllText(path, content);\nConsole.WriteLine("फ़ाइल बनाई गई और लिखी गई।");\n\nयदि कई पंक्तियाँ लिखनी हैं, तो File.WriteAllLines का उपयोग करें:
string[] lines = { "पहली पंक्ति", "दूसरी पंक्ति", "तीसरी पंक्ति" };\nFile.WriteAllLines(path, lines);\n\nमौजूदा फ़ाइल के अंत में डेटा जोड़ने के लिए File.AppendAllText का उपयोग करें:
File.AppendAllText(path, "\\nजोड़ी गई पंक्ति।");\n\nफ़ाइल से डेटा पढ़ना
\n\nफ़ाइल पढ़ना भी सहज है। File.ReadAllText विधि सभी सामग्री को एक स्ट्रिंग के रूप में लौटाती है:
string readContent = File.ReadAllText(path);\nConsole.WriteLine("फ़ाइल की सामग्री:");\nConsole.WriteLine(readContent);\n\nयदि फ़ाइल में पंक्तियाँ हैं, तो File.ReadAllLines का उपयोग करना अधिक सुविधाजनक है, जो पंक्तियों की एक सरणी लौटाता है:
string[] readLines = File.ReadAllLines(path);\nforeach (string line in readLines)\n{\n Console.WriteLine(line);\n}\n\nबड़ी फ़ाइलों के लिए, पूरी फ़ाइल को मेमोरी में लोड करने से बचने के लिए StreamReader के साथ स्ट्रीमिंग रीडिंग का उपयोग करना बेहतर है:
using (StreamReader reader = new StreamReader(path))\n{\n string line;\n while ((line = reader.ReadLine()) != null)\n {\n Console.WriteLine(line);\n }\n}\n\nफ़ोल्डरों (निर्देशिकाओं) के साथ काम करना
\n\nफ़ोल्डर बनाना, अस्तित्व की जाँच करना और हटाना सामान्य कार्य हैं। Directory वर्ग का उपयोग करके यह इस प्रकार किया जाता है:
string dirPath = @"C:\\Temp\\MyFolder";\n\n// अस्तित्व की जाँच\nif (!Directory.Exists(dirPath))\n{\n Directory.CreateDirectory(dirPath);\n Console.WriteLine("फ़ोल्डर बनाया गया।");\n}\nelse\n{\n Console.WriteLine("फ़ोल्डर पहले से मौजूद है।");\n}\n\n// फ़ोल्डर हटाना (यदि खाली है)\nif (Directory.Exists(dirPath))\n{\n Directory.Delete(dirPath);\n Console.WriteLine("फ़ोल्डर हटा दिया गया।");\n}\n\nफ़ोल्डर में फ़ाइलों की सूची प्राप्त करने के लिए Directory.GetFiles का उपयोग करें:
string[] files = Directory.GetFiles(@"C:\\Temp");\nforeach (string file in files)\n{\n Console.WriteLine(file);\n}\n\nइसी प्रकार उप