Java 将2个文件读入地图字符
任务是:第一个文件包含随机单词,第二个文件包含字母表中的字母和值。 我必须将这两个文件读入地图数据结构,对于另一个文件中的每个单词,我必须打印出它们的点值: `在这里输入代码 ``Java 将2个文件读入地图字符,java,file,compare,maps,Java,File,Compare,Maps,任务是:第一个文件包含随机单词,第二个文件包含字母表中的字母和值。 我必须将这两个文件读入地图数据结构,对于另一个文件中的每个单词,我必须打印出它们的点值: `在这里输入代码 `` static void readMap(字符串路径,HashMap集){ `试一试{ BufferedReader in=新的BufferedReader(新文件读取器(路径)); while(in.readLine()!=null){ String line=in.readLine(); 集合。放置(第1行); }
static void readMap(字符串路径,HashMap集){
`试一试{
BufferedReader in=新的BufferedReader(新文件读取器(路径));
while(in.readLine()!=null){
String line=in.readLine();
集合。放置(第1行);
}
in.close();
}捕获(FileNotFoundException x){
System.out.println(x.getMessage());
}捕获(IOY异常){
System.out.println(y.getMessage());
}
}
这就是我所拥有的。但我不知道如何比较这两个文件。。。
谢谢你的帮助 您需要做两件事:
HashMap map=newhashmap();
BufferedReader in=新的BufferedReader(新的文件阅读器(“lets.txt”);
while(in.readLine()!=null){
String line=in.readLine();
//TODO您需要将字符串按“;”拆分,并获取char和int
字符c=。。。
INTX=。。。
集合。放置(c,x);
}
BufferedReader in=新的BufferedReader(新文件阅读器(“random_words.txt”);
while(in.readLine()!=null){
String line=in.readLine();
int-total=0;
对于(int i=0;i
请更清楚地解释:“第一个文件包含随机单词,第二个文件包含字母表中的字母和值。”,或者给样本输入和输出第一个文件是:qabalah qabalah qabalas第二个文件:a;1 b;3 c;3d;2e;1 f;4g;2小时;4我;1 j;8K;5升;1米;3N;1 o;1p;3q;10R;1s;1吨;1 u;1伏;4W;4倍;8岁;4z;所以它应该像一个拼字游戏。我必须给出第一个文件中单词的值OK,什么是“点值”?“abc”是“133”还是加上数字,所以是“7”?另外,你应该说,如果这是家庭作业,它将是7。啊,对不起,这是我必须做的一个项目,我很乐意帮忙。如果这个答案解决了你的问题,请接受。哦,我还有一个问题。我在这条评论下打印,因为输出更好
static void readMap(String path, HashMap<String,Object> set) {
`try {
BufferedReader in = new BufferedReader(new FileReader(path));
while(in.readLine() != null) {
String line = in.readLine();
set.put(line,1);
}
in.close();
} catch(FileNotFoundException x) {
System.out.println(x.getMessage());
} catch(IOException y) {
System.out.println(y.getMessage());
}
}
HashMap<Character, Integer> map = new HashMap<Character, Integer>();
BufferedReader in = new BufferedReader(new FileReader("letters.txt"));
while(in.readLine() != null) {
String line = in.readLine();
//TODO you need to split the string by ';' and get the char and int
char c = ...
int x = ...
set.put(c,x);
}
BufferedReader in = new BufferedReader(new FileReader("random_words.txt"));
while(in.readLine() != null) {
String line = in.readLine();
int total = 0;
for(int i = 0; i < line.length(); i++)
{
char c = line.charAt(i);
//TODO get integer value from map, add it to the total, and print it after the loop
int value = ...
total += value;
}
System.out.println("value for word " + line + " is " + total);
}