Java: Попытка игнорировать (или пропустить) возврат каретки (\ n), который не является концом строки - PullRequest
0 голосов
/ 06 сентября 2018

Я успешно прочитал данные из CSV-файлов с этим кодом

            Scanner scanIt = new Scanner(new BufferedReader(new FileReader(filef)));
            while (scanIt.hasNextLine())
            {
                String inputLine = scanIt.nextLine();
                System.out.println(inputLine);
            }
            scanIt.close();

до тех пор, пока я не наткнулся на эту строку (в файле), которая, кажется, имеет "возврат каретки", скрытый в строке чтения, расположенной между-, "TBD и TBD",

Входящий PR # & Doc #:, "TBDTBD" ,, средства, предоставленные спонсором / нераспределенные Фонды ,,,, $ - ,,, NS02, $ -, $ -,

Я пытаюсь решить эту проблему, сообщив коду найти возврат каретки "\ n", которому предшествует запятая "," как истинный конец строки

while (scanIt.hasNext(","+"\n"))

но это не решило проблему.

Какие есть идеи для решения этой проблемы? Спасибо, что нашли время, чтобы сделать это.

1 Ответ

0 голосов
/ 06 сентября 2018

вам нужен анализатор CSV, чтобы правильно прочитать файл. Реальное решение состоит в том, что \n или \r между " не является концом строки.

Пожалуйста, используйте правильный анализатор CSV, потому что это не единственная проблема, с которой вы столкнетесь. Данные с , могут быть другой такой проблемой. CSV-парсер решит все эти проблемы.

...