से फ़ाइल कैसे खोलें डिस्क पर लिखने और Process.Start()
करने के विरोध में MemoryStream
से सीधे फ़ाइल खोलना संभव है? विशेष रूप से एक पीडीएफ फ़ाइल? यदि नहीं, तो मुझे लगता है कि मुझे डिस्क पर MemoryStream
लिखना होगा (जो कि कष्टप्रद है)। क्या कोई मुझे डिस्क पर MemoryStream
लिखने के बारे में संसाधन के बारे में बता सकता है?मेमोरी स्ट्रीम
उत्तर
यह क्लाइंट पर निर्भर करता है :) यदि ग्राहक stdin से इनपुट स्वीकार करेगा तो आप ग्राहक को पुश धक्का दे सकते हैं। एक अन्य संभावना एक नाम-पाइप सर्वर या सॉकेट-सर्वर लिखना हो सकता है - तुच्छ नहीं, लेकिन यह काम कर सकता है।
हालांकि, सबसे आसान विकल्प केवल एक temp फ़ाइल को पकड़ना है और उस पर लिखना है (और बाद में हटाएं)।
var file = Path.GetTempFileName();
using(var fileStream = File.OpenWrite(file))
{
var buffer = memStream.GetBuffer();
fileStream.Write(buffer, 0, (int)memStream.Length);
}
जब आप पूरा कर लें तो फ़ाइल को साफ़ करना याद रखें।
या 'WriteTo' (गैर 4.0 के लिए) – Magnus
@Magnus का उपयोग करें - मैंने इसे हटा दिया; एहसास हुआ कि मैं मेमोरीस्ट्रीम से बैक-बफर का उपयोग कर सकता हूं –
यदि कोई फ़ाइल खोलकर, आपका मतलब पीडीएफ फाइलों के लिए एडोब रीडर शुरू करने जैसा है, तो हाँ, आपको इसे एक फाइल में लिखना होगा। यही है, जब तक कि एप्लिकेशन आपको कुछ एपीआई प्रदान नहीं करता है।
एक तरह से फाइल करने के लिए एक धारा लिखने के लिए होगा:
using (var memoryStream = /* create the memory stream */)
using (var fileStream = File.OpenWrite(fileName))
{
memoryStream.WriteTo(fileStream);
}
Path.GetTempFileName() '.tmp' विस्तार के साथ फ़ाइल नाम देता है, इसलिए आप Process.Start() की आवश्यकता है का उपयोग cant't एक्सटेंशन के माध्यम से विंडोज फाइल एसोसिएशन।
- 1. मेमोरी स्ट्रीम
- 2. मैं मेमोरी स्ट्रीम
- 3. सी ++ स्ट्रीम मेमोरी
- 4. पुन: उपयोग मेमोरी स्ट्रीम
- 5. मेमोरी स्ट्रीम सी #
- 6. एफएमओडी मेमोरी स्ट्रीम समस्या
- 7. मेमोरी स्ट्रीम से स्ट्रिंग
- 8. स्ट्रिंग को मेमोरी स्ट्रीम में कनवर्ट करें - मेमोरी स्ट्रीम विस्तार योग्य नहीं है?
- 9. स्कैला स्ट्रीम और उनकी मेमोरी उपयोग
- 10. निरंतर मेमोरी से इनपुट स्ट्रीम बनाना
- 11. एक्सएमएल लेखक और मेमोरी स्ट्रीम सी #
- 12. रूबी में मेमोरी से HTTP स्ट्रीम स्ट्रीम डेटा कैसे कर सकता हूं?
- 13. मैं एक वेब रेस्पॉन्स को मेमोरी स्ट्रीम में कैसे रखूं?
- 14. सी ++ इनपुट स्ट्रीम स्ट्रीम आउटपुट स्ट्रीम
- 15. स्ट्रीम
- 16. स्ट्रीम
- 17. स्ट्रीम
- 18. स्ट्रीम
- 19. स्ट्रीम
- 20. स्ट्रीम
- 21. नोडज स्ट्रीम स्ट्रीम बनाम कॉलबैक
- 22. आरएमएमपी स्ट्रीम को एमएमएस स्ट्रीम
- 23. बाइट स्ट्रीम और कैरेक्टर स्ट्रीम
- 24. सर्वलेट आउटपुट स्ट्रीम
- 25. फ़ाइल स्ट्रीम में एक सामान्य स्ट्रीम
- 26. आरटीएसपी वीडियो स्ट्रीम को http स्ट्रीम
- 27. सॉकेट.ओ स्ट्रीम को नोड प्रतिलिपि स्ट्रीम
- 28. वर्चुअल वेबकैम इनपुट बाइट स्ट्रीम
- 29. मेमोरी मेमोरी लीक इश्यू
- 30. स्ट्रीम स्ट्रिंगबिल्डर
(जेम्स - मैंने अपने उत्तर से 4.0 निर्भरता को हटा दिया) –