Bir .txt dosyasını nasıl açabilirim ve girilen sayılar veya boşluklar bir dizi listesine ayrılabilir?Bir txt dosyası nasıl açılır ve Java'da sayıları oku
cevap
Oku dosya daha sonra boşluklarla ayrılmış ise
System.out.println (strLine);
yerine Sen,
try{
int i = Integer.parseInt(strLine);
}catch(NumberFormatException npe){
//do something
}
olabilir bir tamsayı, her satırı ayrıştırmak ve bir liste halinde saklamak:
List<Integer> list = new ArrayList<Integer>();
File file = new File("file.txt");
BufferedReader reader = null;
try {
reader = new BufferedReader(new FileReader(file));
String text = null;
while ((text = reader.readLine()) != null) {
list.add(Integer.parseInt(text));
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (reader != null) {
reader.close();
}
} catch (IOException e) {
}
}
//print out the list
System.out.println(list);
try{
BufferedReader br = new BufferedReader(new FileReader("textfile.txt"));
String strLine;
//Read File Line By Line
while ((strLine = br.readLine()) != null) {
// Print the content on the console
System.out.println (strLine);
}
//Close the input stream
in.close();
}catch (Exception e){//Catch exception if any
System.err.println("Error: " + e.getMessage());
}finally{
in.close();
}
Bu satır satır okuyacak,
senin Hayır ise. newline char tarafından saperated. o zaman
try{
String noInStringArr[] = strLine.split(" ");
//then you can parse it to Int as above
}catch(NumberFormatException npe){
//do something
}
bir 'finally' bloğunda InputStream kapatmalıdır. – dogbane
Lütfen metni okumak için DataInputStream kullanmayın. Ne yazık ki bu gibi örnekler tekrar tekrar kopyalanır, böylece örneğinizden kaldırabilirsiniz. http://vanillajava.blogspot.co.uk/2012/08/java-memes-which-refuse-to-die.html –
güncelleştirildi, güzel yazı btw –
A much s Hörter alternatif aşağıdaki gibidir:
Path filePath = Paths.get("file.txt");
Scanner scanner = new Scanner(filePath);
List<Integer> integers = new ArrayList<>();
while (scanner.hasNext()) {
if (scanner.hasNextInt()) {
integers.add(scanner.nextInt());
} else {
scanner.next();
}
}
A Scanner varsayılan olarak boşluk eşleşen bir sınırlayıcı motif kullanılarak jeton içine girişini keser. Varsayılan sınırlayıcı beyaz boşluk olsa da, yeni satır karakteriyle ayrılmış tüm tam sayıları başarıyla buldu. biz bir satırda bunu yapabilir Java 8'de
İyi haber:
List<Integer> ints = Files.lines(Paths.get(fileName))
.map(Integer::parseInt)
.collect(Collectors.toList());
File file = new File("file.txt");
Scanner scanner = new Scanner(file);
List<Integer> integers = new ArrayList<>();
while (scanner.hasNext()) {
if (scanner.hasNextInt()) {
integers.add(scanner.nextInt());
}
else {
scanner.next();
}
}
System.out.println(integers);
Cevabınızı beğendim! Yalnızca tamsayıları basma ve boşlukları, yeni satırları ve diğer tamsayı olmayan karakterleri atlatma şekli – Hazmat
- 1. Satırları txt oku ve C++
- 2. Oku Büyük TXT Dosyası, Bellek İstisna dışında
- 3. Bir komut dosyası aracılığıyla bir giriş txt dosyası Komut İstemi'nde bir çıkış txt dosyasına nasıl çalıştırılır?
- 4. Bir .txt dosyasından okunan bilgileri oku
- 5. Ben gibi bir txt dosyası var MATLAB
- 6. Oku metin dosyası ve Java
- 7. Txt dosyası yapılandırma dosyası olarak
- 8. Bir javascript dosyası nasıl açılır?
- 9. Python - txt dosyası
- 10. Bir txt dosyasındaki sayıları toplamak için 1-liner regex
- 11. vsdx dosyası nasıl açılır?
- 12. bir DataGridView bir .txt dosyası koyarak
- 13. VB.NET kullanarak yeni bir txt dosyası oluşturun
- 14. python'a yazmaya çalışıyor .txt dosyası
- 15. JavaScript/HTML5 kullanarak nasıl .txt dosyası oluşturulur?
- 16. Bu .DB dosyası nasıl açılır?
- 17. Bir txt dosyası okuyun ve saati kontrol edin?
- 18. PHP'de bir Excel dosyası nasıl açılır?
- 19. GDB'de bir kaynak dosyası nasıl açılır TUI
- 20. .msu uzantı dosyası nasıl açılır?
- 21. Microsoft Dynamics AX kullanarak bir txt dosyası nasıl yazarım?
- 22. Metin dosyası nasıl açılır ve php ile nasıl eklenir?
- 23. Asp.net MVC sayıları ile açılır listeyi nasıl doldurulur?
- 24. Bazı klasörden birkaç txt dosyası içe aktarılıyor
- 25. Dosya satırını oku ve bir listede sakla
- 26. Android FileInputStream read() txt dosyası için String
- 27. MATLAB kullanmadan .mat dosyası nasıl açılır?
- 28. .NET Yükleme sonrasında açık txt dosyası
- 29. Yazma Sekmesi Sınırlandırılmış txt dosyası C# .net
- 30. Python İçindeki her şeyi temizlemeden bir txt dosyası açın?
Bu iyi, ama ben Integer.valueOf (String kullanırım Bunun yerine bir nesne (Tamsayı) istediğinizden beri. –
Neden ** reader.close(); ** 'yi while döngüsünden hemen sonra satırlara taşıyamıyoruz ve ** ** ** bloğu ve diğer ** try-catch'lardan kaçınıyoruz ** ** içerir? –
@ m-d [Java Eğitimi] 'ne bakın (http://docs.oracle.com/javase/tutorial/essential/exceptions/finally.html). “Try” bloğunda bir istisna olsa bile, her zaman kapalı olduklarından emin olmak için kaynakları “nihayetinde” kapatmalısınız. Bu, kaynak sızıntılarını önler. – dogbane