我正在尝试将文本文件中的数字分配给哈希表第一个数字作为键,第二个数字作为值,文本文件看起来像第一行(123 321)第二行(456 565)第n行(789 875)所以我正在尝试将空格后的数字指定为值。
我无法弄清楚如何使用
进行尝试Scanner scanner = new Scanner(new File("C:/Users/msi/Documents/number.txt"));
scanner.useDelimiter(" ");
Hashtable<String, String> numbers = new Hashtable<String, String>();
while(scanner.hasNext())
{
numbers.put(scanner.next(),scanner.next());
System.out.println(numbers);
}
答案 0 :(得分:1)
当我解读它时,Scanner类用于按行解析文件。通过将分隔符设置为空格字符“”,您会得到下一个换行符不再是分隔符的错误。因此,您将获得以下值
解决此问题的一种方法是在按行读取后分割值:
Scanner scanner = new Scanner(new File("C:/Users/msi/Documents/number.txt"));
Hashtable<String, String> numbers = new Hashtable<String, String>();
while(scanner.hasNext())
{
String[] values = scanner.next().split(" ");
numbers.put(values[0], values[1]);
System.out.println(numbers);
}