Avatar ·

जावा में InputStream को String में कैसे पढ़ें?

सभी को नमस्कार! मैंने अभी Java सीखना शुरू किया है और एक समस्या का सामना किया जो मुझे बहुत कठिन लगती है। मुझे InputStream (जैसे फ़ाइल या HTTP अनुरोध के उत्तर) से डेटा पढ़ना है और इसे सामान्य String में बदलना है। समस्या यह है कि InputStream बाइट्स के साथ काम करता है, जबकि मुझे टेक्स्ट चाहिए। यहाँ मेरे कोड का उदाहरण है जो काम नहीं करता: ```java InputStream inputStream = new FileInputStream("file.txt"); String content = inputStream.read(); // स्पष्ट रूप से यह गलत है ``` मैं समझता हूँ कि `read()` विधि केवल एक बाइट (int) लौटाती है, पूरी स्ट्रिंग नहीं। मैंने `BufferedReader` और `InputStreamReader` का उपयोग करने की कोशिश की, लेकिन फिर भी भ्रम है। पूरे InputStream को String में सही और कुशलता से कैसे पढ़ें? Java 8+ में best practices क्या हैं? पहले से धन्यवाद! P.S. मैंने try-with-resources के बारे में सुना है, लेकिन यहाँ इसका उपयोग कैसे करें, यह सुनिश्चित नहीं हूँ। और क्या पढ़ने के बाद स्ट्रीम को बंद करना आवश्यक है? स्ट्रीम बहुत बड़ी हो सकती है, कई मेगाबाइट तक।