我正在读取具有以下格式的文件:名称:症状:原因:治疗:率:预后
总共有 21 个条目,但是当我尝试从文件中读取并使用 .split(":"); 时,输出每次都会更改,但始终遵循以下行:[Ljava.lang.String;@614951ff。我猜它是指针或内存地址,但我想要字符串值。我没有得到任何例外,所以我不确定我哪里出错了。该方法的目的是读取文件并使用所选给定文件行的分隔符拆分为一个数组。
public String[] readCancer(int row) {
cancers = new String[22];
FileInputStream fis;
InputStreamReader isr;
BufferedReader br = null;
String eachCancer;
String[] splitCancer = null;
int j = 0;
try {
fis = new FileInputStream(myData);
isr = new InputStreamReader(fis);
br = new BufferedReader(isr);
input = new Scanner(br);
while(input.hasNext() && j < 23) {
cancers[j++] = input.nextLine();
}
eachCancer = cancers[row].toString();
splitCancer = eachCancer.split(":");
} catch (IOException iox) {
JOptionPane.showMessageDialog(null, "Problem with file input");
} finally {
try {
if(br != null) {
br.close();
}
} catch (IOException iox) {
JOptionPane.showMessageDialog(null, "Problem closing the file");
}
}
return splitCancer;
}