如何把hashmap的内容放入文件中?
HashMap<String,Integer>codeMap=newHashMap<String,Integer>();例如我的codeMap中有“0001”=1“001...
HashMap<String,Integer> codeMap = new HashMap<String,Integer>();
例如我的codeMap中有“0001”=1 “0010”=2,我想把codeMap写入一个my.code文件中,如何写入?
还有,我想把这个codeMap拿出来当一个HashMap来使用,要怎么实现?
写出来的文件可以随便命名的吧~? 展开
例如我的codeMap中有“0001”=1 “0010”=2,我想把codeMap写入一个my.code文件中,如何写入?
还有,我想把这个codeMap拿出来当一个HashMap来使用,要怎么实现?
写出来的文件可以随便命名的吧~? 展开
2008-11-19
展开全部
import java.io.*;
import java.util.HashMap;
import java.util.Map;
public class ObjOpe {
//写入文件
public static void write(Object o,String file){
try{
ObjectOutputStream w = new ObjectOutputStream(new FileOutputStream(file));
w.writeObject(o);
w.flush();
w.close();
}catch(Exception e){}
}
//读取文件
public static Object Reader(String file){
try{
ObjectInputStream in = new ObjectInputStream(new FileInputStream(file));
Object o = in.readObject();
in.close();
return o;
}catch(Exception e){}
return null;
}
//读写测试
public static void main(String[] args) throws Exception {
Map<String,Integer> map = new HashMap<String,Integer>();
map.put("0001",1);
map.put("0010",2);
System.out.println("保存前数据:");
Object[]ks = map.keySet().toArray();
for(int i=0; i<ks.length; i++)
System.out.println(ks[i]+"="+map.get(ks[i]));
String file = "my.code";
System.out.println("保存数据到文件:"+file);
ObjOpe.write(map,file);
System.out.println("保存数据到文件完成.");
System.out.println("从文件 "+file+" 读取数据:");
Object o = ObjOpe.Reader(file);
Map<String,Integer> m = (Map<String,Integer>)o;
System.out.println("从文件读取到的数据:");
Object[]ks2 = map.keySet().toArray();
for(int i=0; i<ks2.length; i++)
System.out.println(ks2[i]+"="+map.get(ks2[i]));
}
}
import java.util.HashMap;
import java.util.Map;
public class ObjOpe {
//写入文件
public static void write(Object o,String file){
try{
ObjectOutputStream w = new ObjectOutputStream(new FileOutputStream(file));
w.writeObject(o);
w.flush();
w.close();
}catch(Exception e){}
}
//读取文件
public static Object Reader(String file){
try{
ObjectInputStream in = new ObjectInputStream(new FileInputStream(file));
Object o = in.readObject();
in.close();
return o;
}catch(Exception e){}
return null;
}
//读写测试
public static void main(String[] args) throws Exception {
Map<String,Integer> map = new HashMap<String,Integer>();
map.put("0001",1);
map.put("0010",2);
System.out.println("保存前数据:");
Object[]ks = map.keySet().toArray();
for(int i=0; i<ks.length; i++)
System.out.println(ks[i]+"="+map.get(ks[i]));
String file = "my.code";
System.out.println("保存数据到文件:"+file);
ObjOpe.write(map,file);
System.out.println("保存数据到文件完成.");
System.out.println("从文件 "+file+" 读取数据:");
Object o = ObjOpe.Reader(file);
Map<String,Integer> m = (Map<String,Integer>)o;
System.out.println("从文件读取到的数据:");
Object[]ks2 = map.keySet().toArray();
for(int i=0; i<ks2.length; i++)
System.out.println(ks2[i]+"="+map.get(ks2[i]));
}
}
2015-06-17 · 知道合伙人互联网行家
关注
展开全部
Set set = hm.entrySet() ;
java.util.Iterator it = hm.entrySet().iterator();
while(it.hasNext()){
java.util.Map.Entry entry = (java.util.Map.Entry)it.next();
Object key = entry.getKey(); // 返回与此项对应的键,如果是一个类则强制转型,而且这个类必须有toString方法,或者你自己写的输出两个字符串的方法
Object value = entry.getValue(); // 返回与此项对应的值
System.out.println(key); // 在这里输出
System.out.println(value);
java.util.Iterator it = hm.entrySet().iterator();
while(it.hasNext()){
java.util.Map.Entry entry = (java.util.Map.Entry)it.next();
Object key = entry.getKey(); // 返回与此项对应的键,如果是一个类则强制转型,而且这个类必须有toString方法,或者你自己写的输出两个字符串的方法
Object value = entry.getValue(); // 返回与此项对应的值
System.out.println(key); // 在这里输出
System.out.println(value);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
.code 文件?怎么没听过啊,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询