java 读取文件 读读出一行,给数组一维a 然后将a赋值给二维数组b 出问题 。。补充是读取部分
publicclassReadtxt{publicstaticvoidread(Stringpath){List<String>list=newArrayList<Str...
public class Readtxt {
public static void read(String path) {
List<String> list = new ArrayList<String>();
String[] a;
String[][] n = null;
int i = 0;
try {
Scanner in = new Scanner(new File(path));// 打开一个文件用简单文本扫描器扫描
while (in.hasNextLine()) {// 如果文件中还有下一行则继续执行
String str = in.nextLine();// 取出文件中这一行赋给变量str
a = splitt(str);// 调用自定义splitt函数输出
System.out.println("a:" + Arrays.deepToString(a));
for (int j = 0; j < a.length; j++) {
System.out.println("i" + i + "j" + j);
n[i][j] = a[j];
System.out.println("b" + n[i][j]);
}
i++;
}
} catch (FileNotFoundException e) {// 捕获打开文件时文件不存在异常
e.printStackTrace();// 打印异常信息
}
}
控制台。。。就是数组赋值 出问题了。。。
a:[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
i0j0
Exception in thread "main" java.lang.NullPointerException
at Readtxt.read(Readtxt.java:23)
at sss.main(sss.java:8) 展开
public static void read(String path) {
List<String> list = new ArrayList<String>();
String[] a;
String[][] n = null;
int i = 0;
try {
Scanner in = new Scanner(new File(path));// 打开一个文件用简单文本扫描器扫描
while (in.hasNextLine()) {// 如果文件中还有下一行则继续执行
String str = in.nextLine();// 取出文件中这一行赋给变量str
a = splitt(str);// 调用自定义splitt函数输出
System.out.println("a:" + Arrays.deepToString(a));
for (int j = 0; j < a.length; j++) {
System.out.println("i" + i + "j" + j);
n[i][j] = a[j];
System.out.println("b" + n[i][j]);
}
i++;
}
} catch (FileNotFoundException e) {// 捕获打开文件时文件不存在异常
e.printStackTrace();// 打印异常信息
}
}
控制台。。。就是数组赋值 出问题了。。。
a:[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
i0j0
Exception in thread "main" java.lang.NullPointerException
at Readtxt.read(Readtxt.java:23)
at sss.main(sss.java:8) 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询