यह एक प्रयास में एक लैम्ब्डा के साथ नए स्ट्रीम का उपयोग करता है।
मैं कहूंगा कि यह सबसे पसंदीदा और संक्षिप्त तरीके वजह से है:
1) यह स्वचालित रूप से धारा जब किया बंद करें और ठीक से किसी भी अपवाद फेंक देते हैं।
2) इसका उत्पादन आलसी है। अंतिम पंक्ति संसाधित होने के बाद प्रत्येक पंक्ति को पढ़ा जाता है। यह मूल जावा स्ट्रीम आधारित फ़ाइल हैंडलिंग spec के करीब भी है।
3) यह प्रत्येक पंक्ति को इस तरीके से प्रिंट करता है जो फ़ाइल में डेटा के सबसे नज़दीक दिखता है।
4) यह कम स्मृति-गहन है, क्योंकि यह एक मध्यवर्ती सूची या इस तरह के Files.readAllLines (...)
5) यह सबसे लचीला है के रूप में सरणी का निर्माण नहीं करता क्योंकि स्ट्रीम प्रदान की वस्तु है कई अन्य उपयोग करता है और कार्यों डेटा (रूपांतरण, संग्रह, विधेय, आदि)
try (Stream<String> stream = Files.lines(Paths.get("sample.txt"),Charset.defaultCharset())) {
stream.forEach(System.out::println);
}
के साथ काम करने के लिए पथ और चारसेट प्रदान की जाती हैं और उपभोक्ता किसी भी वस्तु ले जा सकते हैं तो यह भी काम करता है:
try (Stream stream = Files.lines(path,charset)) {
stream.forEach(System.out::println);
}
त्रुटि हैंडलिंग के साथ:
try (Stream<String> stream = Files.lines(Paths.get("sample.txt"),Charset.defaultCharset())) {
stream.forEach(System.out::println);
} catch (IOException ex) {
// do something with exception
}
स्रोत
2013-10-26 09:42:18
क्योंकि जावा प्रोग्राम के भीतर कार्य किया जा रहा है। जाहिर है, अगर आप एमएस-डॉस या बीएएसएच में हैं, तो बिल्ली फ़ाइल काम करती है। लेकिन आप जानते थे कि :) –