java导出json格式文件的示例代码
本文介绍了java导出json格式文件的示例代码,分享给大家,具体如下:
生成json文件代码:
importjava.io.File;
importjava.io.FileWriter;
importjava.io.Writer;
publicclassCreateFileUtil{
/**
*生成.json格式文件
*/
publicstaticbooleancreateJsonFile(StringjsonString,StringfilePath,StringfileName){
//标记文件生成是否成功
booleanflag=true;
//拼接文件完整路径
StringfullPath=filePath+File.separator+fileName+".json";
//生成json格式文件
try{
//保证创建一个新文件
Filefile=newFile(fullPath);
if(!file.getParentFile().exists()){//如果父目录不存在,创建父目录
file.getParentFile().mkdirs();
}
if(file.exists()){//如果已存在,删除旧文件
file.delete();
}
file.createNewFile();
//格式化json字符串
jsonString=JsonFormatTool.formatJson(jsonString);
//将格式化后的字符串写入文件
Writerwrite=newOutputStreamWriter(newFileOutputStream(file),"UTF-8");
write.write(jsonString);
write.flush();
write.close();
}catch(Exceptione){
flag=false;
e.printStackTrace();
}
//返回是否成功的标记
returnflag;
}
}
json字符串格式化工具代码:
publicclassJsonFormatTool{
/**
*单位缩进字符串。
*/
privatestaticStringSPACE="";
/**
*返回格式化JSON字符串。
*
*@paramjson未格式化的JSON字符串。
*@return格式化的JSON字符串。
*/
publicstaticStringformatJson(Stringjson){
StringBufferresult=newStringBuffer();
intlength=json.length();
intnumber=0;
charkey=0;
//遍历输入字符串。
for(inti=0;i0)&&(json.charAt(i-1)==':')){
result.append('\n');
result.append(indent(number));
}
//(2)打印:当前字符。
result.append(key);
//(3)前方括号、前花括号,的后面必须换行。打印:换行。
result.append('\n');
//(4)每出现一次前方括号、前花括号;缩进次数增加一次。打印:新行缩进。
number++;
result.append(indent(number));
//(5)进行下一次循环。
continue;
}
//3、如果当前字符是后方括号、后花括号做如下处理:
if((key==']')||(key=='}')){
//(1)后方括号、后花括号,的前面必须换行。打印:换行。
result.append('\n');
//(2)每出现一次后方括号、后花括号;缩进次数减少一次。打印:缩进。
number--;
result.append(indent(number));
//(3)打印:当前字符。
result.append(key);
//(4)如果当前字符后面还有字符,并且字符不为“,”,打印:换行。
if(((i+1)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。