मैं वर्तमान में केवल एक फ़ाइल से लाइनों को पढ़ने की कोशिश कर रहा हूं जो मेरे पास है। मैंने एक और स्टैक ओवरफ्लो (Reading a plain text file in Java) पर पाया है कि आप Files.lines (..) के लिए उपयोग कर सकते हैं। (..) हालांकि मैं वास्तव में यह नहीं समझ सकता कि प्रत्येक पाठ के लिए लाइन टेक्स्ट द्वारा लाइन पढ़ने के लिए कैसे उपयोग किया जाए, कोई भी जानता है कहां देखना है या ऐसा कैसे करना है?Files.lines (...) के साथ फ़ाइलों से कैसे पढ़ा जाए। प्रत्येक (...) के लिए?
उत्तर
Files.lines(Path)
Path
तर्क की अपेक्षा करता है और Stream<String>
देता है। Stream#forEach(Consumer)
Consumer
तर्क की अपेक्षा करता है। तो इसे Consumer
पास करके, विधि का आह्वान करें। उस वस्तु को प्रत्येक पंक्ति के लिए जो करना चाहते हैं उसे करने के लिए लागू किया जाना होगा।
यह जावा 8 है, इसलिए आप Consumer
तर्क प्रदान करने के लिए लैम्ब्डा अभिव्यक्तियों या विधि संदर्भों का उपयोग कर सकते हैं। test.txt की
नमूना सामग्री
Hello
Stack
Over
Flow
com
कोड इस पाठ lines()
और forEach()
तरीकों का उपयोग कर फ़ाइल से पढ़ने का।
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.stream.Stream;
public class FileLambda {
public static void main(String JavaLatte[]) {
Path path = Paths.get("/root/test.txt");
try (Stream<String> lines = Files.lines(path)) {
lines.forEach(s -> System.out.println(s));
} catch (IOException ex) {
// do something or re-throw...
}
}
}
आप विधि संदर्भ का उपयोग कर सकते हैं: 'System.out :: println', फिर भी इसका एक ही बाइटकोड में अनुवाद किया जाएगा। –
और एक और बिंदु: आपको 'स्ट्रीम' को चर के रूप में स्टोर नहीं करना चाहिए क्योंकि यह कुछ पाठकों को इसे दो बार या अधिक बार उपयोग करने में भ्रमित कर सकता है, जो प्रतिबंधित है। इसके बजाय, आप इसे 'readAllLines' के साथ' सूची 'में सहेज सकते हैं, फिर इस सूची में विधि' स्ट्रीम() 'का उपयोग करें। –
यह सुनिश्चित करने के लिए स्ट्रीम के लिए प्रयास करें कि यह ऑटो-बंद हो जाता है: 'कोशिश करें (स्ट्रीम
जावा 8, फ़ाइल में मौजूद रहने पर एक classpath
:
Files.lines(Paths.get(ClassLoader.getSystemResource("input.txt")
.toURI())).forEach(System.out::println);
मैं एक नमूना है, आप फ़िल्टर करना/
public class ReadFileLines {
public static void main(String[] args) throws IOException {
Stream<String> lines = Files.lines(Paths.get("C:/SelfStudy/Input.txt"));
// System.out.println(lines.filter(str -> str.contains("SELECT")).count());
//Stream gets closed once you have run the count method.
System.out.println(lines.parallel().filter(str -> str.contains("Delete")).count());
}
}
नमूना इनपुट स्ट्रीम उपयोग कर सकते हैं बनाया है ।टेक्स्ट।
SELECT Every thing
Delete Every thing
Delete Every thing
Delete Every thing
Delete Every thing
Delete Every thing
Delete Every thing
- 1. .rej फ़ाइलों को कैसे पढ़ा जाए, i.e
- 2. विभिन्न जारों से एक ही नाम के साथ कई संसाधन फ़ाइलों को कैसे पढ़ा जाए?
- 3. एएसपी.NET कोर के साथ क्वेरीस्ट्रिंग से मूल्य कैसे पढ़ा जाए?
- 4. fgets() के साथ stdin से कैसे पढ़ा जाए?
- 5. निम स्क्रिप्ट के साथ stdin से कैसे पढ़ा जाए?
- 6. स्कैला कोड में ज़िपित xml फ़ाइलों से कैसे पढ़ा जाए?
- 7. जावा से ओएसएक्स .plist फ़ाइलों को कैसे पढ़ा जाए?
- 8. जावमेल के साथ दृष्टिकोण के ईमेल को कैसे पढ़ा जाए?
- 9. NSDocumentDirectory से डेटा को कैसे पढ़ा जाए
- 10. एक्सएलएसएक्स (एक्सेल) से कैसे पढ़ा जाए?
- 11. एमपी 3 से मेटाडेटा कैसे पढ़ा जाए?
- 12. स्क्रीन के पिक्सेल को कैसे पढ़ा जाए?
- 13. पायथन - एनयूएल सीमांकित लाइनों के साथ फाइल कैसे पढ़ा जाए?
- 14. $ संसाधन के साथ प्रतिक्रिया शीर्षलेख कैसे पढ़ा जाए?
- 15. यूटीएफ -8 के साथ इनपुटस्ट्रीम कैसे पढ़ा जाए?
- 16. numpy के साथ बाइनरी फ़ाइल का हिस्सा कैसे पढ़ा जाए?
- 17. जीडीबी के साथ स्थानीय चर कैसे पढ़ा जाए?
- 18. गतिशील आकार के साथ स्ट्रिंगस्ट्रीम को कैसे पढ़ा जाए?
- 19. वार्निशटॉप के आउटपुट को कैसे पढ़ा जाए?
- 20. एक्सएमआई कैसे पढ़ा जाए?
- 21. जावा के साथ पासवर्ड एन्क्रिप्टेड कुंजी कैसे पढ़ा जाए?
- 22. Awk का उपयोग कर विभिन्न एन्कोडिंग के साथ फ़ाइलों को कैसे पढ़ा जाए?
- 23. आर के साथ .arff फ़ाइल कैसे पढ़ा जाए?
- 24. PHP के साथ एक छवि को कैसे पढ़ा जाए?
- 25. PowerShell के साथ XML फ़ाइल में सीडीएटीए कैसे पढ़ा जाए?
- 26. एसएसडीआईएन से आरएसआईएनसी एसआरसी कैसे पढ़ा जाए?
- 27. NSUserDefaults से स्ट्रिंग को कैसे पढ़ा जाए
- 28. SQLite डेटाबेस से डेटा कैसे पढ़ा जाए?
- 29. कोर डंप (जीडीबी के बिना) से फ्रेम कैसे पढ़ा जाए?
- 30. हबेस से डेटा कैसे पढ़ा जाए?
पद्धति पहले से ही फ़ाइल की प्रत्येक पंक्ति पढ़ रही है यही कारण है कि, आप एक 'स्ट्रिंग' चर में लाइन स्टोर और इसके साथ कुछ और कर सकते हैं ... –
Uhm, आप जावा 8 और lambdas के बारे में पढ़ा जाना चाहिए, विशेष रूप से यहां, लगभग 'उपभोक्ता' और एकल सार विधि की धारणा – fge