Попытка разбить строку на основе запятых без получения ошибки по пробелам - PullRequest
0 голосов
/ 01 мая 2018

Код:

public static void createMovie() {
        String fileName = "C:\\Users\\kat7r\\eclipse-workspace\\Final OOPs project\\src\\movielist.txt";
        File movieFile = new File(fileName);
        try {

            Scanner inputStream = new Scanner(movieFile);
            inputStream.next();
            while (inputStream.hasNext()) {
                String movieArgs = inputStream.next();
                String[] splitData = movieArgs.split(",");
                System.out.println(movieArgs);
                //int priority = Integer.parseInt(splitData[0]);
                //System.out.println("Priority: "+priority);
            }

        } catch(FileNotFoundException e) {
            System.out.println("File not found.");

Ожидаемый результат:

Приоритет, название, жанр, длина, рейтинг

1, «Начало», «Научная фантастика», 2,47,8

2, Побег из Шоушенка, Драма, 2,37,9

3, Coco, Фэнтези, 1.82,8

4, Властелин колец, Фэнтези, 3.8,9

5, Тор: Рагнарок, Фэнтези, 2,17,8

Фактическая мощность;

1, Inception, Наука

Фантастика, 2.47,8

2, Shawshank

Redemption, драма, 2.37,9

3, Coco, Фэнтези, 1.82,8

4, Lord

из

The

кольца, Фэнтези, 3.8,9

5, Thor:

Ragnarok, Фэнтези, 2.17,8

Комментарии:

По существу пробелы заставляют IDE начинать новую строку. Я пытался использовать .nextLine, но это не помогло. Пробовал также выходить в интернет.

Ответы [ 2 ]

0 голосов
/ 01 мая 2018

Вы использовали:

inputStream.nextLine();
while(inputStream.hasNextLine())
{
   String movieArgs = inputStream.nextLine(); 
   String[] splitData = movieArgs.split(",");
   System.out.println(movieArgs);
}
0 голосов
/ 01 мая 2018

Поскольку вы хотите прочитать всю строку ввода, используйте inputStream.nextLine() вместо inputStream.next(). Обратитесь к этой теме .

У меня работает:

public static void createMovie() {
    String fileName = "C:\\Movies.txt";
    File movieFile = new File(fileName);
    try {
        Scanner inputStream = new Scanner(movieFile);
        while (inputStream.hasNextLine()) {
            String movieArgs = inputStream.nextLine();
            System.out.println(movieArgs);
        }

    } catch (FileNotFoundException e) {
        System.out.println("File not found.");
    }
    catch (Exception e) {
        System.out.println(e.getMessage());
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...