java读取txt文件,文件中的内容如下所示。map结构,读出来的一行String怎么转换为Map。请问我该怎么做?

2024-11-23 02:40:16
推荐回答(2个)
回答1:

分这么几步操作:

  1. 把读出的一行数据,根据分号(;),解析成数组;

  2. 然后循环这个数组,根据冒号(:),解析成数组;

  3. 把2的数据赋给一个map;

代码示意:

String str = "你读取的一行文本";
Map map = new HashMap(); //新建map对象
String[] strArray = str.split(";");
for(String s:strArray){
String[] sArray = s.split(":");
map.put(sArray[0], sArray[1]);
}

回答2:

String str = "用户ID:987654321 ; 用户名:李四 ; 用户IP:192.168.1.1 ; 活动时间:2015-01-13 12时58分34秒 ; 程序名称:C:/Windows/system32/DllHost.exe ; 开始时间:12时58分30秒 ; 结束时间:12时58分34秒 ; 是否锁定:0";
        Map map = new HashMap();
        for(String s :str.trim().split(";")){
            String[] ss = s.trim().split(":");
            map.put(ss[0].trim(), ss[1].trim());
        }
        
        for(Entry e:map.entrySet()){
            System.out.println(e.getKey());
            System.out.println(e.getValue());
        }