本文主要介绍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;
}