Вот один из способов:
import java.io.*;
import java.util.*;
class Test {
public static void main(String[] args) throws FileNotFoundException {
Scanner scanner = new Scanner(new FileReader("filename.txt"));
HashMap<String, String> map = new HashMap<String, String>();
while (scanner.hasNextLine()) {
String[] columns = scanner.nextLine().split(" ");
map.put(columns[0], columns[1]);
}
System.out.println(map);
}
}
С учетом ввода:
somekey somevalue
someotherkey someothervalue
это печатает
{someotherkey=someothervalue, somekey=somevalue}
Если ваши строки выглядят по-разному, я либо предлагаю вам извлечь columns[0]
и columns[1]
и выполнять ваши манипуляции со строками по мере необходимости, либо, если вам удобны регулярные выражения, вы можете использовать Pattern
/ Matcher
сопоставить линию с шаблоном и получить содержимое из групп захвата.