Файл ODS для JSON

Я хотел бы преобразовать мою таблицу данных в массив массивов JSON.

Этот сайт делает это: http://www.shancarter.com/data_converter/index.html И я посмотрел исходный код.

Но то, что я хотел бы, это макрос / скрипт / расширение или любой способ программирования его для преобразования моих .ods в файл JSON:

Подобно:

NAME VALUE COLOR DATE Alan 12 blue Sep. 25, 2009 Shan 13 "green blue" Sep. 27, 2009 John 45 orange Sep. 29, 2009 Minna 27 teal Sep. 30, 2009 

Для того, чтобы:

 [ ["Alan",12,"blue","Sep. 25, 2009"], ["Shan",13,"green\tblue","Sep. 27, 2009"], ["John",45,"orange","Sep. 29, 2009"], ["Minna",27,"teal","Sep. 30, 2009"] ] 

    Ответ может быть снова запоздалым, но marcoconti83 сделал именно это: чтение файла ods и возвращение их в виде двухмерных массивов.

    https://github.com/marcoconti83/read-ods-with-odfpy/blob/master/ODSReader.py

    Когда у вас есть данные в массивах, это не так сложно, чтобы попасть в json-файл. Вот пример кода:

     import json from odftoarray import ODSReader # renamed the file to odftoarray.py r = ODSReader("your_file.ods") arrays = r.getSheet("your_data_sheet_name") json.dumps(arrays) 

    Это может быть немного поздно, но для тех, кто ищет и хочет это сделать, скорее всего, лучше сохранить файл .ods как .csv, который может выполнять почти все программы электронных таблиц. Затем используйте что-то вроде этого, чтобы преобразовать его:

     import csv import sys import json, os def convert(csv_filename, fieldnames): print ("Opening CSV file: ",csv_filename) f=open(csv_filename, 'r') csv_reader = csv.DictReader(f,fieldnames) json_filename = csv_filename.split(".")[0]+".json" print ("Saving JSON to file: ",json_filename) jsonf = open(json_filename,'w') data = json.dumps([r for r in csv_reader]) jsonf.write(data) f.close() jsonf.close() csvfile = ('path/to/the/csv/file.csv') field_names = [ "a", "list", "of", "fieldnames" ] convert(csvfile, field_names) 

    И подсказка, csv довольно понятна для человека, поэтому просто пройдите и убедитесь, что она сохранена в нужном вам формате, а затем запустите этот скрипт, чтобы преобразовать его в JSON. Проверьте это в JSON viewer, таком как JSONView, и тогда вам должно быть хорошо идти!