橙稚 2017-06-09 06:27 采纳率: 33.3%
浏览 1303
已采纳

求大神,数据转换,不知道怎么转了。。

{通州区={[164.08]=[2017], [180.0]=[2015], [161.0]=[2011], [166.0]=[2012], [159.5]=[2014]}}
转成下面这种格式。

{"data":164.08,"riqi":"2017","name":"通州区","data":180.0,"riqi":"2015",data":161.0,"riqi":"2011",data":166.0,"riqi":"2012",data":159.50,"riqi":"2014"}图片说明图片说明

  • 写回答

7条回答 默认 最新

  • 一点寒芒先至 2017-06-09 08:01
    关注

    写一个针对楼上的那个格式

    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    public class A {
    public static void main(String[] args) {
    String a="{通州区={[164.08]=[2017], [180.0]=[2015], [161.0]=[2011], [166.0]=[2012], [159.5]=[2014]}}";
    String b=a.substring(1, a.length()-2);
    int i=b.indexOf("=");
    String c=b.substring(0, i);
    System.out.println("c:"+c);
    String d=b.substring(i+2);
    String e= d.replaceAll("\\[", "").replaceAll("\\]", "");
    System.out.println("e:"+e);
    String [] n1= e.split(",");
    List<Map<String, String>> list =new ArrayList<Map<String, String>>();
    for(int j=0;j<n1.length;j++){
        Map<String, String> map=new HashMap<String, String>();
        String [] n2=n1[j].split("=");
        map.put("data", n2[0]);
        map.put("riqi", n2[1]);
        list.add(map);
    }
    Map<String, Object> map1=new HashMap<String, Object>();
    map1.put("key", c);
    map1.put("value", list);
    System.out.println(map1);
    }
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料