Java में फ़ाइल की सामग्री को स्ट्रिंग में कैसे पढ़ें? (File to String)
सभी को नमस्ते! मैं Java में नया हूँ और फ़ाइलों को पढ़ने में समझ नहीं पा रहा हूँ। मुझे पूरी टेक्स्ट फ़ाइल को एक String में पढ़ना है, ताकि बाद में उसे प्रोसेस कर सकूँ (जैसे, लाइनों में विभाजित करना या substring ढूँढना)।
मैंने खुद लिखने की कोशिश की, लेकिन कोड बोझिल है और काम नहीं करता:
```java
File file = new File("test.txt");
String content = "";
try {
FileInputStream fis = new FileInputStream(file);
int b;
while ((b = fis.read()) != -1) {
content += (char) b;
}
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(content);
```
समस्याएँ:
1. अगर फ़ाइल बड़ी है, तो प्रोग्राम धीमा हो जाता है (मैंने सुना है कि लूप में string concatenation खराब है)।
2. एन्कोडिंग निर्दिष्ट नहीं है — Windows पर रूसी अक्षर क्रैकोज़्याब्रा में बदल जाते हैं।
3. अगर स्ट्रीम को बंद करना भूल जाएँ, तो मेमोरी लीक हो सकती है।
4. कोड बहुत बदसूरत दिखता है — इतने सरल कार्य के लिए बहुत सारी लाइनें।
कृपया बताएँ कि आधुनिक Java में फ़ाइल को स्ट्रिंग में सही और सुंदर तरीके से कैसे पढ़ें।