Avatar ·

C# में स्ट्रीम (Stream) को फ़ाइल में कैसे सेव करें? सही तरीके और उदाहरण

सभी को नमस्ते! मैं एक शुरुआती C# डेवलपर हूँ और मुझे ऐसी समस्या का सामना करना पड़ा: मेरे पास `Stream` प्रकार का एक ऑब्जेक्ट है (उदाहरण के लिए, मैंने इसे HTTP अनुरोध या मेमोरी से प्राप्त किया है), और मुझे इसकी सारी सामग्री डिस्क पर एक फ़ाइल में सेव करनी है। \n\nपहले मैंने सबसे सरल तरीका आज़माया: `Read()` का उपयोग करके स्ट्रीम को बाइट्स की एक array में पढ़ना और फिर `File.WriteAllBytes` के माध्यम से लिखना। यहाँ मेरा कोड है:\n\n
public void SaveStreamToFile(Stream inputStream, string filePath)\n{\n    byte[] buffer = new byte[inputStream.Length];\n    inputStream.Read(buffer, 0, buffer.Length);\n    File.WriteAllBytes(filePath, buffer);\n}\n
\n\nलेकिन यह कोड त्रुटि देता है यदि स्ट्रीम पोजीशनिंग का समर्थन नहीं करती (जैसे, नेटवर्क स्ट्रीम)। इसके अलावा, मैंने पढ़ा है कि बड़ी फ़ाइलों में मेमोरी की समस्या हो सकती है।