[英]Split parse text file in java
所以基本上我可以使用BUFFERED READER讀取文本文件。 之后,我應該拆分並解析它,此時,我面臨一個問題。
輸出為:5 2 9 1 7 3 9 2 10 11 6 3
線程“主”中的異常java.lang.NumberFormatException:對於輸入字符串:java.lang.Integer.parseInt(在java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)處為“ F:\\ Gephi \\ number.txt” Integer.java:580),位於java.lang.Integer.parseInt(Integer.java:615),位於javaapplication17.JavaApplication17.main(JavaApplication17.java:42)C:\\ Users \\ Asus \\ AppData \\ Local \\ NetBeans \\ Cache \\ 8.2 \\ executor-snippets \\ run.xml:53:Java返回:1個構建失敗(總時間:0秒)
我的代碼是
package javaapplication17;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class JavaApplication17 {
public static void main(String[] args) {
String count = "F:\\Gephi\\number.txt";
try (BufferedReader br = new BufferedReader(new FileReader(count)))
{
String line;
while ((line = br.readLine()) != null)
{
System.out.println(line);
}
}
catch (IOException e)
{
e.printStackTrace();
}
// What is the Problem in this part? //
String[] abc = count.split("/t");
int[] intArray = new int[abc.length];
for (int i=0; i<abc.length; i++)
{
String numberAsString = abc[i];
intArray[i] = Integer.parseInt(numberAsString);
}
System.out.println("Number of integers: " + intArray.length);
System.out.println("The integers are:");
for (int number : intArray)
{
System.out.println(number);
}
}
}
我的文本文件看起來像這樣
5 6 7
5 2 9
1 7 3
9 2 10
11 6 3
問題是count
是一個字符串,其中包含值"F:\\\\Gephi\\\\number.txt"
。 這不會為您提供文件中的行數/列數。
String[] abc = count.split("/t"); // <------ This won't work
所以當你這樣做
int[] intArray = new int[abc.length];
您正在創建大小為abc
且被\\t
分割的數組,這是不正確的。
為了解決您的問題,您可以將try-catch
塊更改為以下內容:
int countOfNum = 0;
try (BufferedReader br = new BufferedReader(new FileReader(count))) {
String line;
while ((line = br.readLine()) != null) {
String[] currLine = line.split("\t");
System.out.println(Arrays.toString(currLine));
countOfNum = countOfNum + currLine.length;
}
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("Total count of numbers : " +countOfNum);
currLine
Arrays.toString()
我們打印出值 countOfNum
我們可以找到文件中元素的總數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.