如何在java中的字符字段中读取一行字符?
private char[] w;
int i=0;
BufferedReader br = new BufferedReader(new FileReader("pathToFile..."));
char c = '-1';
while (c!='\n') {
w[i++] = (char) br.read();
}
我得到了
显示java.lang.NullPointerException
答案 0 :(得分:2)
试试这个
private char[] w;
BufferedReader br = new BufferedReader(new FileReader("pathToFile..."));
String s = null;
// to iterate for each line in file
while ((s = br.readLine()) != null ) {
// this will store chars of line
w = s.toCharArray();
//TODO - do something based on w array
}
答案 1 :(得分:1)
您需要创建一个数组实例(在Java中,数组是一个对象 - 即使该数组是基本类型 - )
private char[] w = new char[numberBigEnough];
请注意,我宁愿使用更动态的方法,例如。使用StringBuilder
实例。这样您就不必猜测行的长度来指定数组维度。
答案 2 :(得分:1)
我个人会在这里使用ArrayList。
private List<Character> list = new ArrayList<Character>();
int i=0;
BufferedReader br = new BufferedReader(new FileReader("pathToFile..."));
char c = '-1';
while (c!='\n') {
list.add((char) br.read());
}
类似的东西。