Как вы сказали, вы уже печатаете строку, считанную из файла, затем вам просто нужно разделить строку с разделителем, который у вас есть в файле.Предполагая, что в качестве разделителя используется запятая, все, что вам нужно сделать, это разделить строку запятой и получить доступ к первому элементу и сохранить его в List
,
. Вот пример кода,
public static void main(String[] args) throws Exception {
try(BufferedReader br = new BufferedReader(new FileReader("filename.txt"))) {
String line = null;
List<String> idList = new ArrayList<String>();
while((line = br.readLine()) != null) {
System.out.println(line); // you already printing it
String[] tokens = line.split("\\s*,\\s*"); // assuming your line is like this --> 123, Pushpesh, Rajwanshi
if (tokens.length > 0) {
idList.add(tokens[0]); // ID will be accessed at zero index
}
}
idList.forEach(System.out::println);
}
}
Используя Java8 и выше, вы можете сделать это в один лайнер.
List<String> idList = Files.lines(Paths.get("filename.txt")).filter(x -> x.trim().length() > 0)
.map(x -> x.split("\\s*,\\s*")).map(x -> x[0]).collect(Collectors.toList());
idList.forEach(System.out::println);