Разделительная строка Java с символом канала - PullRequest
0 голосов
/ 11 июня 2018

У меня есть текстовый файл в этом формате

12345 | John | Male
5678  | Alyssa | Female

Я хочу вставить текстовый файл в базу данных с конечным результатом, подобным этому

Column1  Column2 Column3
12345    John    Male 
5678     Alyssa  Female

Любой совето том, как это закодировать?Я думал о разделении данных с использованием символа канала, однако я могу представить вывод только как

12345
John
Male5678
Alyssa
Female

Поскольку разделение с помощью канала не разделяет 'Male' и '5678'

Большое спасибо за чтение

Приветствия

1 Ответ

0 голосов
/ 11 июня 2018

Вы можете прочитать файл построчно, используя Files.lines

public static void main(String[] args) throws IOException {
    Path path = Paths.get("C:\\temp\\test.txt");
    try (Stream<String> stream = Files.lines(path)) {
        stream
            .map(line -> line.split("\\|"))
            .forEach(array -> consumeLine(array[0].trim(), array[1].trim(), array[2].trim()));
    }
}

private static void consumeLine(String s1, String s2, String s3) {
    // Operate on the line
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...