2016-05-19 21 views
-1

我有一個文本文件,如下所示:導入文本文件轉換成Java數組

1 2,1 3,5 4 
2 1,1 4,2 3,1 
3 1,5 4,1 0 
4 3,1 2,2 1,3 

我想將文本文件分隔成兩個陣列,使得第一陣列只逗號前面的數字和第二個數組只是逗號後面的數字。這些數字組由製表符分隔。這裏的輸出應該是:

array1 = {{1,2,3,4},{2,1,4,3},{3,1,4,0},{4,3,2,1}}; 
array2 = {{0,1,5,0},{0,1,2,1},{0,5,1,0},{0,1,2,3}}; 

謝謝。

+0

我看不出有任何邏輯來得到這些錯誤。 –

回答

1

您可以單獨閱讀每行,並使用StringTokenizer獲取下一對。

首先,計算輸入中的行數(n),然後計算每行中的對數(m)。這裏,n = 4,m = 4。

int[][] array1 = new int[n][m]; 
int[][] array2 = new int[n][m]; 

然後,用StringTokenizer讀入輸入。

for (int i = 0; i < n; i++) { 
    StringTokenizer line = new StringTokenizer(read line here); 
    for (int j = 0; j < m; j++) { 
     String next = line.nextToken(); //next pair 
     String[] values = next.split(","); //split pair by comma 
     array1[n][m] = Integer.parseInt(values[0]); 
     if (values.length == 2) { //in case there is no comma 
      array2[n][m] = Integer.parseInt(values[1]); 
     } 
    } 
} 
+0

這給了我以下錯誤:錯誤:找不到符號 符號:方法拆分(java.lang.String) 位置:變量線類型java.util.StringTokenizer – brad

+0

固定,放線,而不是下一個哈哈 –