Weiß jemand, ob es eine Anwendung gibt, mit der ich vorzugsweise XLS in JSON konvertieren kann?
Ich werde mich auch mit einem Konverter von CSV zufrieden geben, da ich das wahrscheinlich selbst schreiben muss, wenn nichts in der Nähe ist.
Weiß jemand, ob es eine Anwendung gibt, mit der ich vorzugsweise XLS in JSON konvertieren kann?
Ich werde mich auch mit einem Konverter von CSV zufrieden geben, da ich das wahrscheinlich selbst schreiben muss, wenn nichts in der Nähe ist.
Antworten:
Dies hat bei mir perfekt funktioniert und erfordert KEINEN Datei-Upload:
Sie können dieses Tool ausprobieren, das ich erstellt habe:
Es wird in JSON, XML und andere konvertiert.
Es ist auch alles clientseitig, sodass Ihre Daten Ihren Computer niemals verlassen.
Seit Powershell 3.0 ( im Lieferumfang von Windows 8 enthalten, verfügbar für Windows 7 und Windows Server 2008, jedoch nicht für Windows Vista) können Sie das integrierte Befehl "convertto-json" verwenden:
PS E:> $topicsjson = import-csv .\itinerary-all.csv | ConvertTo-Json
PS E:\> $topicsjson.Length
11909
PS E:\> $topicsjson.getType()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Object[] System.Array
Wenn Sie keine vorhandene Lösung finden können, ist es ziemlich einfach, eine einfache Lösung in Java zu erstellen. Ich habe gerade eine für einen Kunden geschrieben und es dauerte nur ein paar Stunden, einschließlich der Recherche nach Tools.
Apache POI liest die Excel-Binärdatei. http://poi.apache.org/
JSONObject erstellt den JSON
Danach müssen Sie nur noch die Zeilen in den Excel-Daten durchlaufen und eine JSON-Struktur erstellen. Hier ist ein Pseudocode für die grundlegende Verwendung.
FileInputStream inp = new FileInputStream( file );
Workbook workbook = WorkbookFactory.create( inp );
// Get the first Sheet.
Sheet sheet = workbook.getSheetAt( 0 );
// Start constructing JSON.
JSONObject json = new JSONObject();
// Iterate through the rows.
JSONArray rows = new JSONArray();
for ( Iterator<Row> rowsIT = sheet.rowIterator(); rowsIT.hasNext(); )
{
Row row = rowsIT.next();
JSONObject jRow = new JSONObject();
// Iterate through the cells.
JSONArray cells = new JSONArray();
for ( Iterator<Cell> cellsIT = row.cellIterator(); cellsIT.hasNext(); )
{
Cell cell = cellsIT.next();
cells.put( cell.getStringCellValue() );
}
jRow.put( "cell", cells );
rows.put( jRow );
}
// Create the JSON.
json.put( "rows", rows );
// Get the JSON text.
return json.toString();
Dies funktioniert für mich und wird clientseitig ausgeführt: http://www.convertcsv.com/csv-to-json.htm
Ich habe gerade Folgendes gefunden:
http://tamlyn.org/tools/csv2json/
(Hinweis: Sie müssen Ihre CSV-Datei über eine Webadresse verfügbar haben.)
Probieren Sie das winzige kostenlose Tool aus:
http://keyangxiang.com/csvtojson/
Es verwendet das csvtojson-Modul von node.js.
Keine der vorhandenen Lösungen funktionierte, daher habe ich schnell ein Skript gehackt, das die Aufgabe übernehmen würde. Konvertiert auch leere Zeichenfolgen in Nullen und trennt die Kopfzeile für JSON. Je nach verwendetem CSV-Dialekt und Zeichensatz muss möglicherweise eine Anpassung vorgenommen werden.
#!/usr/bin/python
import csv, json
csvreader = csv.reader(open('data.csv', 'rb'), delimiter='\t', quotechar='"')
data = []
for row in csvreader:
r = []
for field in row:
if field == '': field = None
else: field = unicode(field, 'ISO-8859-1')
r.append(field)
data.append(r)
jsonStruct = {
'header': data[0],
'data': data[1:]
}
open('data.json', 'wb').write(json.dumps(jsonStruct))
Wie wäre es mit CSV-Unterstützung für Jackson (JSON-Prozessor) anstelle von fest codierten Konvertern: https://github.com/FasterXML/jackson-dataformat-csv . So kann Core Jackson JSON als POJOs, Maps JsonNode
, fast alles einlesen . Die CSV-Unterstützung kann mit CSV dasselbe tun. Kombinieren Sie beide und es ist ein sehr leistungsfähiger, aber einfacher Konverter zwischen mehreren Formaten (es gibt bereits Backends für XML, YAML und mehr).
Einen Artikel dazu finden Sie hier .
Überprüfen Sie, ob dies hilfreich ist: Zurück zu CSV - Konvertieren von CSV-Text in Objekte; über JSON
Dies ist ein Blogbeitrag, der im November 2008 veröffentlicht wurde und C # -Code enthält, um eine Lösung bereitzustellen.
Aus dem Intro im Blogbeitrag:
Da ist Json leichter zu lesen und zu schreiben als XML. Daraus folgt, dass CSV (durch Kommas getrennte Werte) leichter zu lesen und zu schreiben ist als Json. CSV verfügt auch über Tools wie Excel und andere, mit denen Sie problemlos arbeiten und erstellen können. Wenn Sie also jemals eine Konfigurations- oder Datendatei für Ihre nächste App erstellen möchten, finden Sie hier einen Code zum Konvertieren von CSV in JSON in POCO-Objekte