JSON字符串与对象集合转换及写入.json文件

本文主要介绍fastjson和集合对象的转换及json格式的数据写到.json文件夹中的方法。

   /**
	 * 
	 * json2list:将字符串转化为集合
	 *
	 * @param json 字符串json格式
	 * @param clazz 类
	 * @return List<T> 返回泛型集合列表
	 */
	public static <T> List<T> json2list(String json, Class<T> clazz) {
		return JSONArray.parseArray(json, clazz);
	}

	/**
	 * 
	 * json2Object:将字符串转化为对象
	 *
	 * @param json 字符串json格式
	 * @param clazz 类
	 * @return T 泛型对象
	 */
	public static <T> T json2Object(String json, Class<T> clazz) {
		return JSON.parseObject(json, clazz);
	}

	/**
	 * 
	 * object2json:将对象或者集合转化为json字符串
	 *
	 * @param object 对象火鸡和
	 * @return String 返回字符串json格式
	 */
	public static String object2json(Object object) {
		return JSON.toJSONString(object);
	}

   /**
	 * 生成.JSON格式文件
	 * jsonString 数据源
	 * filePath 生成的文件路径
	 * fileName 文件名称
	 */
    public static boolean createJsonFile(String jsonString, String filePath, String fileName) {
        // 标记文件生成是否成功
        boolean flag = true;
        // 拼接文件完整路径
        String fullPath = filePath + File.separator + fileName + ".json";
        // 生成JSON格式文件
        try {
            // 保证创建一个新文件
            File file = new File(fullPath);
            if (!file.getParentFile().exists()) { // 如果父目录不存在,创建父目录
                file.getParentFile().mkdirs();
            }
            //如果已存在,删除旧文件
            if (file.exists()) { 
                file.delete();
            }
            file.createNewFile();
            // 将格式化后的字符串写入文件
            Writer write = new OutputStreamWriter(new FileOutputStream(file), "UTF-8");
            write.write(jsonString);
            write.flush();
            write.close();
        } catch (Exception e) {
            flag = false;
            e.printStackTrace();
        }
        // 返回是否成功的标记
        return flag;
    }
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值