问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Java读入文件解析输出Map

发布网友 发布时间:2022-04-29 04:30

我来回答

2个回答

热心网友 时间:2023-10-11 16:24

你这Map<String, Map<String, Float>>没看明白,map里面还有个map?

一层map示例如下,两层map请说明白

import java.io.*;
import java.util.HashMap;
import java.util.Map;

public class Test
{
    public static void main(String[] args) throws Exception
    {
        Map<String, Float> map = new HashMap<String, Float>();

        // 如果你文件里没有中文,那个GBK编码就无所谓,否则要按实际编码来定
        BufferedReader br =
            new BufferedReader(new InputStreamReader(new FileInputStream(new File("d:/test.txt")), "GBK"));
        String str;
        while ((str = br.readLine()) != null)
        {
            // 如果分隔符不是空格,改成对应的分隔符,比如tab即"\t"
            String[] strs = str.split(" ");
            if (strs.length != 3)
            {
                System.out.println("格式错误:" + str);
            }

            try
            {
                map.put(strs[1], Float.parseFloat(strs[2]));
            }
            catch (NumberFormatException e)
            {
                e.printStackTrace();
            }
        }
    }

}

追问是两层map 第一层是string和Map
第二层是string和对应的float。
举例子比如第一行里输出>
第二行就是>
......
不知道我说没说明白~

追答

看来我是理解错了,你只是要输出这种形式的字符串?

import java.io.*;

public class Test
{
    public static void main(String[] args) throws Exception
    {
        // 如果你文件里没有中文,那个GBK编码就无所谓,否则要按实际编码来定
        BufferedReader br =
            new BufferedReader(new InputStreamReader(new FileInputStream(new File("d:/test.txt")), "GBK"));
        String str;
        while ((str = br.readLine()) != null)
        {
            // 如果分隔符不是空格,改成对应的分隔符,比如tab即"\t"
            String[] strs = str.split(" ");
            if (strs.length != 3)
            {
                System.out.println("格式错误:" + str);
            }

            System.out.println("Map<" + strs[1] + ", Map<" + strs[1] + ", " + strs[2] + ">>");
        }
    }

}

热心网友 时间:2023-10-11 16:25

你这个做出来了么?可否告知一下

热心网友 时间:2023-10-11 16:24

你这Map<String, Map<String, Float>>没看明白,map里面还有个map?

一层map示例如下,两层map请说明白

import java.io.*;
import java.util.HashMap;
import java.util.Map;

public class Test
{
    public static void main(String[] args) throws Exception
    {
        Map<String, Float> map = new HashMap<String, Float>();

        // 如果你文件里没有中文,那个GBK编码就无所谓,否则要按实际编码来定
        BufferedReader br =
            new BufferedReader(new InputStreamReader(new FileInputStream(new File("d:/test.txt")), "GBK"));
        String str;
        while ((str = br.readLine()) != null)
        {
            // 如果分隔符不是空格,改成对应的分隔符,比如tab即"\t"
            String[] strs = str.split(" ");
            if (strs.length != 3)
            {
                System.out.println("格式错误:" + str);
            }

            try
            {
                map.put(strs[1], Float.parseFloat(strs[2]));
            }
            catch (NumberFormatException e)
            {
                e.printStackTrace();
            }
        }
    }

}

追问是两层map 第一层是string和Map
第二层是string和对应的float。
举例子比如第一行里输出>
第二行就是>
......
不知道我说没说明白~

追答

看来我是理解错了,你只是要输出这种形式的字符串?

import java.io.*;

public class Test
{
    public static void main(String[] args) throws Exception
    {
        // 如果你文件里没有中文,那个GBK编码就无所谓,否则要按实际编码来定
        BufferedReader br =
            new BufferedReader(new InputStreamReader(new FileInputStream(new File("d:/test.txt")), "GBK"));
        String str;
        while ((str = br.readLine()) != null)
        {
            // 如果分隔符不是空格,改成对应的分隔符,比如tab即"\t"
            String[] strs = str.split(" ");
            if (strs.length != 3)
            {
                System.out.println("格式错误:" + str);
            }

            System.out.println("Map<" + strs[1] + ", Map<" + strs[1] + ", " + strs[2] + ">>");
        }
    }

}

热心网友 时间:2023-10-11 16:25

你这个做出来了么?可否告知一下

热心网友 时间:2023-10-11 16:25

你这Map<String, Map<String, Float>>没看明白,map里面还有个map?

一层map示例如下,两层map请说明白

import java.io.*;
import java.util.HashMap;
import java.util.Map;

public class Test
{
    public static void main(String[] args) throws Exception
    {
        Map<String, Float> map = new HashMap<String, Float>();

        // 如果你文件里没有中文,那个GBK编码就无所谓,否则要按实际编码来定
        BufferedReader br =
            new BufferedReader(new InputStreamReader(new FileInputStream(new File("d:/test.txt")), "GBK"));
        String str;
        while ((str = br.readLine()) != null)
        {
            // 如果分隔符不是空格,改成对应的分隔符,比如tab即"\t"
            String[] strs = str.split(" ");
            if (strs.length != 3)
            {
                System.out.println("格式错误:" + str);
            }

            try
            {
                map.put(strs[1], Float.parseFloat(strs[2]));
            }
            catch (NumberFormatException e)
            {
                e.printStackTrace();
            }
        }
    }

}

追问是两层map 第一层是string和Map
第二层是string和对应的float。
举例子比如第一行里输出>
第二行就是>
......
不知道我说没说明白~

追答

看来我是理解错了,你只是要输出这种形式的字符串?

import java.io.*;

public class Test
{
    public static void main(String[] args) throws Exception
    {
        // 如果你文件里没有中文,那个GBK编码就无所谓,否则要按实际编码来定
        BufferedReader br =
            new BufferedReader(new InputStreamReader(new FileInputStream(new File("d:/test.txt")), "GBK"));
        String str;
        while ((str = br.readLine()) != null)
        {
            // 如果分隔符不是空格,改成对应的分隔符,比如tab即"\t"
            String[] strs = str.split(" ");
            if (strs.length != 3)
            {
                System.out.println("格式错误:" + str);
            }

            System.out.println("Map<" + strs[1] + ", Map<" + strs[1] + ", " + strs[2] + ">>");
        }
    }

}

热心网友 时间:2023-10-11 16:25

你这个做出来了么?可否告知一下
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
长沙到西昌。坐火车先从长沙到成都、成都东,再到西昌,哪个方便一些 S先生与P先生谜题的题面 为什么首都设在襄阳 改姓可以不随父母性吗 韩艺瑟怎么改姓? 纸、墨、笔、砚是中国传统的文房四宝,墨的使用最早在 [ ] A.商代后期... 想问下创维光伏E企赢模式有哪些优势,到底值不值得投资啊?有没有合作... 太平洋太享e保百万医疗值得入手吗?每年花多少钱? 爱e满分适合哪些人买?注意哪些问题? 太平洋太享e保百万医疗适合哪些人买?价格多少? 美的冷慧星KF开头的可以制热吗? java解析xml字符串 后 组装成map形式,求大神 如何解析json中map数据 美的冷慧星空调不制热上面显示e1什么意思高人指点 全国的省份在sqlite数据库中怎么解析来 SET集合容器的存储结构是什么样子呢??求个大神解析下!! java程序设计求详解 java解析xml。如何用dom方式解析xml并将数据放入hashmap? 将xml文件解析到hashmap中 java中hashcode什么时候用?怎么用? 求详解 hashmap json包装 在jsp中怎么解析 vivo Y70s怎么自定义充电提示音? 50公斤的白砂糖外包装袋多重 Java:集合框架之LinkedHashMap用法详解 白砂糖的价格是每千克16元一袋白砂糖有50千克食品厂要买五袋这样的白砂糖一共? 一吨产品需要白砂糖50斤,问600吨需要多少千克白砂糖? 180毫升等于多少克白糖 如何用纸折粽子最后缠上彩线 临翔南华晶鑫糖业有限公司生产的50㎏白砂糖多少价 想要紫薯馒头好看又好吃,蓬松不塌陷,需要注意什么? 美的冷俊星空调没有遥控器怎么开 美的KFR-35GW/DY-PA402怎么样 取姓名,用“非常用字”或者生僻字,好不好 孩子起名字有什么后果?乱用生僻字会有什么奇葩遭遇? 请问国家对姓名中的生僻字的使用上有什么规定? 宝宝起的名字里带生僻字好吗,有什么建议吗? 起名用生僻字怎么了? 取名不要取生僻字、不常用的字、谐音不好的名字、太洋化的名字、不要取大家不熟悉的字? 取名字用生辟字好使么? fnx 和mtx格式的图形文件 怎么能打开 需要安装什么软件 谁有chinesef-fs.fnx字体? UG字体问题,急 UG出图字体问题 转换成dxf后在auotcad打开,中文字变成??号如何解决? 求徐怀钰-水晶mp3格式百度云网址 GHOST 中英文对照表 这样备份系统?用什么软件,怎么用? 用ghost怎样备份整个硬盘和还原整个硬盘? 用GHOST备份新装系统的方法? 我想把和女朋友一起旅游时照的相片做成影集,不知道哪里可以做到?