LibreOffice Calc支持JSON文件导入/排序吗?

dced5bon  于 2023-04-08  发布在  其他
关注(0)|答案(4)|浏览(298)

我一直在尝试将几个.json文件导入LibreOffice Calc。
虽然我可以得到原始数据,但它并没有像我想象的那样进行排序(通过将不同的信息片段放入每个单元格)。
LibreOffice是否支持导入JSON文件并在单元格中对它们进行排序?(换句话说,导入+排序)?
如果似乎没有直接支持这一点,将转换为CSV是下一个合乎逻辑的步骤,以获得数据到Calc?

wxclj1h5

wxclj1h51#

我自己也有同样的问题(这就是我发现这个问题的原因)。
所以,对于下一个发现这个问题的人-答案是否定的- LibreOffice Calc不支持直接导入JSON。
下一个合乎逻辑的步骤确实是转换为CSV。有免费的在线JSON到CSV转换器,使用其中一个(http://www.convertcsv.com/json-to-csv.htm),我可以轻松地制作一个正确的CSV,Calc导入没有问题。
一个可能的警告是,如果你有用JSON表示的复杂对象--可能无法转换为CSV,但是,如果它不适合CSV,它可能也不适合电子表格格式。

uujelgoq

uujelgoq2#

有一个LibreOffice GetRest plugin的文档是用蹩脚的英语写的,它有一个“parseJSON”公式。它不会将JSON转换为CSV(没有很多繁琐的工作),但它可能会帮助你的用例。

yx2lnoni

yx2lnoni3#

如果你可以在Libreoffice Calc中运行Python脚本,那么当你看到这里的内容时,它应该是可能的:http://blog.appliedinformaticsinc.com/how-to-parse-and-convert-json-to-csv-using-python/

slwdgvem

slwdgvem4#

这不是对问题的直接回答,而是一个简单的解决方案。假设你的JSON是一个数据列的平面数组,它可以用这个Python代码片段转换为CSV(需要python3和pandas模块-pip install pandas):

import sys
from pathlib import Path
import pandas as pd

input_path = Path(sys.argv[1])
output_path = input_path.with_suffix('.csv')

df = pd.read_json(input_path)
df.to_csv(output_path.open(mode='w'), encoding='utf-8', index=False, header=True)

这将JSON文件的路径作为第一个参数,并在同一个文件夹中创建CSV。有关更多输出选项,请参阅DataFrame.to_csv()

相关问题