Java 读取Json文件内容

时间:2023-03-09 13:40:45
Java 读取Json文件内容

  读取json文件为String类型:

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import java.io.*; /**
* Json读取工具类
*/
public class JsonUtil { private static final Logger logger = LogManager.getLogger(JsonUtil.class); /**
* 读取json文件
* @param fileName json文件名
* @return 返回json字符串
*/
public String readJsonFile(File jsonFile) {
String jsonStr = "";
logger.info("————开始读取" + jsonFile.getPath() + "文件————");
try {
//File jsonFile = new File(fileName);
FileReader fileReader = new FileReader(jsonFile);
Reader reader = new InputStreamReader(new FileInputStream(jsonFile), "utf-8");
int ch = 0;
StringBuffer sb = new StringBuffer();
while ((ch = reader.read()) != -1) {
sb.append((char) ch);
}
fileReader.close();
reader.close();
jsonStr = sb.toString();
logger.info("————读取" + jsonFile.getPath() + "文件结束!————");
return jsonStr;
} catch (Exception e) {
logger.info("————读取" + jsonFile.getPath() + "文件出现异常,读取失败!————");
e.printStackTrace();
return null;
}
}
}

  将读取出来的JSON文件内容从String转为Map:

import com.alibaba.fastjson.JSON;

String jsonStr = jsonUtil.readJsonFile(file);
Map jsonMap = (Map) JSON.parse(jsonStr);