0

为什么我不能使用 split 方法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();
            }
        }
    }
});

谢谢。

4

1 回答 1

3

在尝试之前,您必须先摆脱String困境。您可能正在寻找或。Scannersplit()Scanner.next()Scanner.nextLine()

如果您尝试读取整个文件,则需要使用循环一次读取一行,直到Scanner.hasNextLine()返回 false。String或者,您可以使用commons-io FileUtils.readFileToString()将整个文件读入。

于 2013-02-28T02:34:36.247 回答