Распечатать весь текст между двумя символами - PullRequest
2 голосов
/ 30 марта 2019

Я хочу напечатать определенную часть текста из текстового файла. Например:

номер) улица) город) состояние) страна)

Я хочу напечатать от ) до ), чтобы в текстовом файле можно было ввести любое название улицы или страны. Что я сделал, это:

  • Я попытался подключить сканер к файлу и создать цикл while с помощью .hasNextLine();
  • Затем создание строки для всего текстового файла String line = textscanner.nextLine();
  • Затем, чтобы напечатать country, например, я бы создал подстроку System.out.print(line.substring(25));

Однако это не будет работать, если в файле есть разные названия улиц или стран. Как сделать так, чтобы он печатал что-нибудь от ) до )?

1 Ответ

2 голосов
/ 30 марта 2019

Вы должны воспользоваться преимуществом Java split() метода, который принимает указанную строку текста для использования в качестве разделителей / разделителей для слов, которые часто являются запятыми, как в файлах .csv.Я собираюсь пропустить часть о чтении файла и просто использовать эту строку в качестве примера и поместить слова в массив:

String line = "number)street)city)state)country)";
String[] words = line.split("\\)");

Обратите внимание, в вашем случае вы должны использовать двойную обратную косую черту, иначе компиляторвыдает ошибку, в которой нет подходящих скобок.

...