hashmap 输入输出 JAVA
我想做一个程序把一个文件里的内容自动取出来比如说文件名称是123.txt文件的内容是:【药品名称】通用名称:地高辛注射液曾用名称:英文名称:DigoxinInjectio...
我想做一个程序把一个文件里的内容自动取出来
比如说文件名称是123.txt
文件的内容是:
【药品名称】
通用名称:地高辛注射液
曾用名称:
英文名称:Digoxin Injection
..........
.........
【性状】
.........
.........
........
【药物原理】
......
...
..
....
我想把【 】之间的名称放到key里面
然后把对应的内容放到value里面
我想该用到BufferedReader 的readline()
请问该怎么弄?如果你嫌麻烦,告诉我关键就可以了
回答的好的话我会追加的 展开
比如说文件名称是123.txt
文件的内容是:
【药品名称】
通用名称:地高辛注射液
曾用名称:
英文名称:Digoxin Injection
..........
.........
【性状】
.........
.........
........
【药物原理】
......
...
..
....
我想把【 】之间的名称放到key里面
然后把对应的内容放到value里面
我想该用到BufferedReader 的readline()
请问该怎么弄?如果你嫌麻烦,告诉我关键就可以了
回答的好的话我会追加的 展开
展开全部
这是我写过的一段代码,你参考改一下就好,很简单
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.HashMap;
public class FileNameReader {
public static void main(String[] args) {
readTxtFile("D:\\code analysis\\file names\\test.txt");
}
public static void readTxtFile(String filePath){
try {
String encoding="GBK";
HashMap<String,Integer> counter= new HashMap<String, Integer>();
File file=new File(filePath);
if(file.isFile() && file.exists()){ //判断文件是否存在
InputStreamReader read = new InputStreamReader(
new FileInputStream(file),encoding);//考虑到编码格式
BufferedReader bufferedReader = new BufferedReader(read);
String lineTxt = null;
while((lineTxt = bufferedReader.readLine()) != null){
int lastPoint = lineTxt.lastIndexOf(".");
String lastName = lineTxt.substring(lastPoint);
if(counter.containsKey(lastName)){
counter.put(lastName,counter.get(lastName)+1);
}else{
counter.put(lastName,1);
}
//System.out.println(lineTxt);
//System.out.println(lastName);
}
read.close();
}else{
System.out.println("找不到指定的文件");
}
} catch (Exception e) {
System.out.println("读取文件内容出错");
e.printStackTrace();
}
}
}
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.HashMap;
public class FileNameReader {
public static void main(String[] args) {
readTxtFile("D:\\code analysis\\file names\\test.txt");
}
public static void readTxtFile(String filePath){
try {
String encoding="GBK";
HashMap<String,Integer> counter= new HashMap<String, Integer>();
File file=new File(filePath);
if(file.isFile() && file.exists()){ //判断文件是否存在
InputStreamReader read = new InputStreamReader(
new FileInputStream(file),encoding);//考虑到编码格式
BufferedReader bufferedReader = new BufferedReader(read);
String lineTxt = null;
while((lineTxt = bufferedReader.readLine()) != null){
int lastPoint = lineTxt.lastIndexOf(".");
String lastName = lineTxt.substring(lastPoint);
if(counter.containsKey(lastName)){
counter.put(lastName,counter.get(lastName)+1);
}else{
counter.put(lastName,1);
}
//System.out.println(lineTxt);
//System.out.println(lastName);
}
read.close();
}else{
System.out.println("找不到指定的文件");
}
} catch (Exception e) {
System.out.println("读取文件内容出错");
e.printStackTrace();
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询