欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > java 读取json文件并写入Excel

java 读取json文件并写入Excel

2025/3/12 22:34:24 来源:https://blog.csdn.net/HSJ0170/article/details/141664057  浏览:    关键词:java 读取json文件并写入Excel

依赖于lombok、easyExcel


import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import lombok.Builder;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;import java.io.*;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;/*** @author hsj* @description:* @date 2024-8-28 17:54*/
public class ReadJsonFile {public static void main(String[] args) throws Exception {File file = new File("I:\\BladeX-Boot\\src\\test\\java\\org\\springblade\\税220304.json");FileReader fileReader = new FileReader(file);Reader reader = new InputStreamReader(new FileInputStream(file), "Utf-8");int ch = 0;StringBuffer sb = new StringBuffer();while ((ch = reader.read()) != -1) {sb.append((char) ch);}fileReader.close();reader.close();String jsonStr = sb.toString();JSONArray ja = JSON.parseArray(jsonStr);List<F> list = new ArrayList<F>();for (Object o : ja) {JSONObject jb = (JSONObject) o;F f = F.builder().name(String.format("*%s*%s", jb.getString("spfwjc"), jb.getString("xmmc"))).id(jb.getString("sphfwssflhbbm")).model(jb.getString("ggxh")).unit(jb.getString("dw")).num(jb.getString("spsl")).price(jb.getBigDecimal("hsdj")).total(jb.getBigDecimal("hsje")).tax0(jb.getBigDecimal("slv")).tax1(jb.getBigDecimal("se")).build();list.add(f);}EasyExcel.write("I:\\BladeX-Boot\\src\\test\\java\\org\\springblade\\税220304.xlsx", F.class).sheet("税220304").doWrite(list);}
}@Getter
@Setter
@EqualsAndHashCode
@Builder
class F {@ExcelProperty("项目名称")private String name;@ExcelProperty("ID")private String id;@ExcelProperty("规格型号")private String model;@ExcelProperty("单位")private String unit;@ExcelProperty("数量")private String num;@ExcelProperty("单价含税")private BigDecimal price;@ExcelProperty("金额含税")private BigDecimal total;@ExcelProperty("税率")private BigDecimal tax0;@ExcelProperty("税额")private BigDecimal tax1;
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词