JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,以文本形式进行数据交流。阿里提供了一个简单的 JSON 转 Excel 工具,可以帮助我们快速将 JSON 数据转成 Excel 表格。下面我们详细介绍如何使用该工具。
首先,我们需要在项目中引入 Ali JSON 转 Excel 的依赖:
<dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.3.0</version> </dependency>
接着,我们需要写一个 Java 类来处理 JSON 数据并转成 Excel。
import com.alibaba.excel.ExcelWriter; import com.alibaba.excel.Metadata.Sheet; import com.alibaba.excel.Metadata.Table; import com.alibaba.excel.support.ExcelTypeEnum; import org.json.JSONArray; import org.json.JSONObject; import java.io.FileOutputStream; import java.io.IOException; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; public class JsonToExcel { public static void main(String[] args) throws IOException { JSONArray jsonArray = new JSONArray(jsonString); MaptitleMap = new LinkedHashMap(); JSONObject obj = jsonArray.getJSONObject(0); obj.keySet().forEach(key -> titleMap.put(key,key)); List > dataList = new ArrayList(); for (int i = 0; i < jsonArray.length(); i++) { List
rowDataList = new ArrayList(); JSONObject jsonObject = jsonArray.getJSONObject(i); titleMap.keySet().forEach(key -> rowDataList.add(jsonObject.get(key).toString())); dataList.add(rowDataList); } String filePath = "output.xlsx"; FileOutputStream fos = new FileOutputStream(filePath); ExcelWriter writer = new ExcelWriter(fos,ExcelTypeEnum.XLSX); Sheet sheet1 = new Sheet(1,0); sheet1.setSheetName("Sheet1"); Table table = new Table(1); List > head = new ArrayList(); titleMap.values().forEach(value -> head.add(Collections.singletonList(value))); table.setHead(head); writer.write1(dataList,sheet1,table); writer.finish(); } }
我们需要先将 JSON 字符串解析成 JSONArray,并且获取表格头信息。接着将每一行数据存成 List<List<String>> 的形式。最后使用 Ali 提供的 ExcelWriter 对象将数据写入文件并输出。
最后,我们需要调用上述代码来将 JSON 转成 Excel 文件。
String jsonString = " [{\"name\":\"Alice\",\"age\":22,\"gender\":\"Female\"},{\"name\":\"Bob\",\"age\":25,\"gender\":\"Male\"}]"; JsonToExcel jsonToExcel = new JsonToExcel(); jsonToExcel.exportExcel(jsonString);
以上就是使用 Ali JSON 转 Excel 的全部过程。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。