【发布时间】:2013-11-19 02:39:58
【问题描述】:
我想读取一个文本文件并将其存储为 java 中的字符串多维数组。
输入会是这样的
11 12 13
12 11 16
33 45 6
我想把它存储在
String[][] as={{"11","12","13"},
{"12","11","16"},
{"33","45"}};
我的代码
String file="e:\\s.txt";
try
{
int counterCol=0,counterRow=0;
String[][] d=null;
BufferedReader bw=new BufferedReader(new FileReader(file));
String str=bw.readLine();
String[] words=str.split(",");
System.out.println(words.length+"Counterrow");
counterCol=words.length; //get total words split by comma : column
while(bw.readLine()!=null)
{
counterRow++;
// to get the total words as it gives total row count
}
String[][] d=new String[counterRow][counterCol];
for(int x=0;x<counterRow;x++)
{
for(int y=0;y<counterCol;y++)
{
d[x][y]=bw.readLine();
//storing in array. But here gives me the exception
}
}
但是当我得到空指针异常时,我无法将它存储在数组中。如何克服这个问题
【问题讨论】:
-
初始化你的数组 d
-
d[x][y] = new String[counterCol][counterRow];
-
是的,我已更改并初始化。但我无法存储我的值并取回。获取 null
-
仅供参考:您的数据示例没有任何逗号。如果文件中的数据相同,那么您将无法使用,因为您正在使用
String[] words=str.split(",");拆分行