读取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);
所有评论(0)