से बनाए गए मैं एक फ़ाइल की सामग्री में हेरफेर करने की जरूरत है:सी # StreamWriter के साथ फाइल को ओवरराइट करने FileStream
FileStream fs = new FileStream(filePath, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None);
StreamReader sr = new StreamReader(fs);
StreamWriter sw = new StreamWriter(fs);
newString = someStringTransformation(sr.ReadToEnd());
sw.Write(newString);
fs.flush();
fs.Close();
हालांकि इसके बाद के संस्करण newString बजाय नए परिवर्तन के साथ फ़ाइल को अधिलेखित करने की जोड़ देता है। इसे करने की ज़रूरत है ताकि कोई अन्य एप्लिकेशन किसी लेखन को पढ़ने के बीच फ़ाइल तक पहुंच न सके, इसलिए मैं एक फाइलस्ट्रीम ऑब्जेक्ट से पाठक और लेखक बना रहा हूं।
मुझे पता है कि आप here वर्णित अनुसार दूसरे पैरामीटर सेट के साथ एक StreanWriter बना सकते हैं। हालांकि ऊपर के रूप में StreamWriter बनाते समय यह पैरामीटर में से एक प्रतीत नहीं होता है।
धारा निस्तब्धता और फ़ाइल के शुरू में इसे वापस का स्थान बदलने, तो कोशिश करें लिखना, फिर लेखक को फ्लश करना, फिर फ़ाइल को छोटा करना। –
एक और तरीका एक और अस्थायी फ़ाइल बना रहा है, उस फ़ाइल में सभी नई सामग्री को सहेजें, फिर पुराने को हटाएं और नया नाम बदलें। –
जो भी आप करने का प्रयास कर रहे हैं, उसे कोई समझ नहीं आता है, फ़ाइल खोलने से पहले फ़ाइल को माइक्रोसॉन्ड फ़ाइल पढ़ने के बाद आपको कोई अन्य प्रक्रिया के खिलाफ कोई सुरक्षा नहीं है। –