将json对象写入本地文件,然后以io的方式读出来,再以树状格式显示

1.将json写入本地文件

public String test(){
String num="[\n" +
" {\n" +
" “code”: “1”,\n" +
" “name”: “菜单1”,\n" +
" “parent”: “”,\n" +
" “subMenus”: \n" +
" [\n" +
" {\n" +
" “code”: “2”,\n" +
" “name”: “菜单2”,\n" +
" “parent”: “1”\n" +
" },\n" +
" {\n" +
" “code”: “4”,\n" +
" “name”: “菜单4”,\n" +
" “parent”: “1”\n" +
" },\n" +
" {\n" +
" “code”: “7”,\n" +
" “name”: “菜单7”,\n" +
" “parent”: “1”\n" +
" },\n" +
" {\n" +
" “code”: “8”,\n" +
" “name”: “菜单8”,\n" +
" “parent”: “1”\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" “code”: “3”,\n" +
" “name”: “菜单3”,\n" +
" “parent”: “”,\n" +
" “subMenus”: \n" +
" [\n" +
" {\n" +
" “code”: “5”,\n" +
" “name”: “菜单5”,\n" +
" “parent”: “3”\n" +
" },\n" +
" {\n" +
" “code”: “6”,\n" +
" “name”: “菜单6”,\n" +
" “parent”: “3”\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" “code”: “9”,\n" +
" “name”: “菜单9”,\n" +
" “parent”: “”\n" +
" }\n" +
“]”;
try {
/ObjectMapper mapper = new ObjectMapper();
String value = mapper.writeValueAsString(list);
/
OutputStream out =new FileOutputStream(“D:/file/num.json”);
byte[] b=num.getBytes();
for(int i=0;i<b.length;i++){
out.write(b[i]);
}
out.close();
} catch (IOException e) {
e.printStackTrace();
return “失败”;
}
return num;
}

2.io读出并显示

public static void main(String args[]) throws IOException {
File file=new File(“D:/file/num.json”);
String content= FileUtils.readFileToString(file,“UTF-8”);
List list= JSON.parseArray(content, Map.class);
for(Map map:list){
System.out.println(“父项为”+map.get(“name”)+" code:"+map.get(“code”));
JSONArray ja=(JSONArray) map.get(“subMenus”);
if(ja!=null){
for(Object obj:ja){
System.out.println(“父项为”+map.get(“name”)+“的子项:”+obj);
}
}

    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值