Как использовать метод useDelimiter()
класса Scanner
для использования как запятой (,), так и символом новой строки (\ n) в качестве разделителей?Несколько разделителей в классе сканера Java
Я разбираю текст из файла csv.
Как использовать метод useDelimiter()
класса Scanner
для использования как запятой (,), так и символом новой строки (\ n) в качестве разделителей?Несколько разделителей в классе сканера Java
Я разбираю текст из файла csv.
Как насчет useDelimiter(",|\\n");
useDelimiter принимает шаблон регулярного выражения, поэтому, это было бы что-то вроде ",|\n"
Jigar абсолютно прав. Но если это не сработает, попробуйте ",|\\r"
, так как большинство текстовых файлов имеют \ г \ п, а не только \ п
Использования сканирования разделителей для файлов Excel - не упускать из вида RegEx вещи. В моем случае файл excel делится на '|'. Я потратил значительное время на синтаксический анализ строк, используя scanner.useDelimiter ("|"), и вернул символ по символу. Замена этого с помощью scanner.useDelimiter («\\ |») решила мою проблему!
Что делает первый? – tomejuan
Он ускользает от второго. Regex использует \ n для обозначения новой строки, но так же делает Java, поэтому вы пишете \\ n, которая переводится в \ n для регулярного выражения. –
Удивительно, почему томежуан не ответил. Может быть, «ускользает», «регулярное выражение» или объяснение о втором «\». – DSlomer64