为什么我不能在input
上使用拆分方法?在Eclipse中它说:对于类型Scanner,方法split(String)是未定义的。我不知道我做错了什么,如果有人能引导我走向正确的方向。
btnFile.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
JFileChooser chooser = new JFileChooser("C:\\");
chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
FileNameExtensionFilter filter = new FileNameExtensionFilter(
" Only .txt", "txt");
chooser.setFileFilter(filter);
int code = chooser.showOpenDialog(null);
if (code == JFileChooser.APPROVE_OPTION) {
File selectedFile = chooser.getSelectedFile();
Scanner input;
try {
input = new Scanner(selectedFile); // <-- Here
String[] splits = input.next().split(" "); <-- And here
for (int i = 0; i < splits.length; i++) {
textArea.setText(splits[i]);
System.out.println(splits[i]);
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
});
感谢。
答案 0 :(得分:3)
在尝试String
之前,您必须从Scanner
中获得split()
。您可能正在寻找Scanner.next()
或Scanner.nextLine()
。
如果您正在尝试读取整个文件,则需要使用循环一次读取一行,直到Scanner.hasNextLine()
返回false。或者,您可以使用commons-io FileUtils.readFileToString()将整个文件读入String
。