Пытаясь вывести несколько слов из каждой строки - PullRequest
0 голосов
/ 03 марта 2012

Я пытался получить 2,3,4 слова файла, и это код до сих пор. Но я получаю некоторые сообщения об ошибках. Кто-нибудь может мне помочь, пожалуйста? Это код:

import java.util.Scanner;
import java.io.File;
import java.io.PrintWriter;
import java.io.FileNotFoundException;

class PrintLines{
public static void main(String[] args) throws FileNotFoundException {

    Scanner me = new Scanner(System.in);

    System.out.print("File Name: ");
    String s = me.next();
    File inFile = new File(s);
    Scanner in = new Scanner(inFile);

    while(in.hasNextLine()){
        String[] split=in.split(" ");
        System.out.println(split[2]+split[3]+split[4]);

    }
    in.close();
}
}

Но это сообщения об ошибках, которые я получаю:

PrintLines.java:18: cannot find symbol
symbol  : method split(java.lang.String)
location: class java.util.Scanner
        String[] split=in.split(" ");
                         ^
1 error

Ответы [ 2 ]

2 голосов
/ 03 марта 2012

Если вы читаете документы , то у Scanner нет метода "split", поэтому вы получаете ошибку компилятора, сообщающую, что вы вызываете несуществующий метод.

Попробуйте поменять местами

String[] split=in.split(" ");

для:

String[] split=in.nextLine().split(" ");

Подсказка о соединении между этими двумя методами указана, если вы прочитали JavaDoc для hasNextLine () , где метод nextLine () является следующим документированным.

2 голосов
/ 03 марта 2012

Вы звоните split на Scanner; Вы должны вызывать его на nextLine, который возвращает следующую строку как String:

String[] split = in.nextLine().split(" ");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...