Czy ktoś wie, czy istnieje aplikacja, która pozwoli mi ukryć najlepiej XLS do JSON?konwersja CSV/XLS do JSON?
Postaram się również o konwerter z CSV, ponieważ prawdopodobnie będę musiał sam napisać, jeśli nic nie ma w pobliżu.
Czy ktoś wie, czy istnieje aplikacja, która pozwoli mi ukryć najlepiej XLS do JSON?konwersja CSV/XLS do JSON?
Postaram się również o konwerter z CSV, ponieważ prawdopodobnie będę musiał sam napisać, jeśli nic nie ma w pobliżu.
To działało idealnie dla mnie i nie wymaga wysyłania pliku:
Jeśli chcesz konwertować na tekst, który możesz wkleić do kodu, użyj opcji "Actionscript". –
Niestety ta strona internetowa zepsuła się. –
Wygląda na to, że źródło jest na GIT: https://github.com/cparker15/csv-to-json?files=1 – zmonteca
Zobacz, czy to pomaga: Back to CSV - Convert CSV text to Objects; via JSON
To blogu opublikowane w listopadzie 2008 roku, który zawiera kod C#, aby zapewnić rozwiązania.
Od intro na blogu:
jako JSON jest łatwiejszy do odczytu i zapisu następnie XML. Wynika z tego, że CSV (wartości oddzielone przecinkami) jest łatwiejszy do odczytania i napisania niż Json. CSV ma również narzędzia takie jak Excel i inne, które ułatwiają pracę i tworzenie. Więc jeśli kiedykolwiek chcesz stworzyć config lub plik danych dla kolejnej aplikacji, tu jest jakiś kod do konwersji plików CSV do formatu JSON do POCO obiekty
dzięki. chory muszę przenieść to na java, ale lepiej wtedy próbować na nowo wymodelować kołem – mkoryak
cieszę się, że działa, C# -> java jest całkiem dobrym dopasowaniem. – condiosluzverde
Właśnie znalazłem to:
http://tamlyn.org/tools/csv2json/
(Uwaga: musisz mieć dostępny plik csv za pośrednictwem adresu internetowego)
Ta usługa wymaga przycisku przesyłania. – neoneye
sieć poszła w dół –
Jeśli nie możesz znaleźć istniejącego rozwiązania, łatwo jest zbudować podstawowy w Javie. Właśnie napisałem dla klienta i zajęło mi to tylko kilka godzin, łącznie z narzędziami badawczymi.
Apache POI odczyta binarny plik Excel. http://poi.apache.org/
JSONObject zbuduje JSON
Po że to tylko kwestia iteracja wierszy danych Excela i budowania struktury JSON. Oto pseudo kod do podstawowego użycia.
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();
Jeśli korzystam z programu Excel w E: /exceloutput.xlsx. Jakie byłyby wartości w pliku i inp w pierwszych dwóch wierszach? – Kate
można spróbować tego narzędzia zrobiłem:
konwertuje do formatu JSON , XML i inne.
To również strona klienta, więc Twoje dane nigdy nie opuszczają komputera.
wygląda interesująco, źle wrócę do tego, kiedy będę potrzebować ponownie – mkoryak
Jest w porządku, ale należy pamiętać, że poprawnie nie ucieka cytaty. Kiedy Twój plik CSV zawiera podwójne cudzysłowy, dane wyjściowe go nie wymykają. Być może będziesz musiał to zrobić ręcznie. Bardzo przydatne narzędzie jednak. – barrycarton
Niesamowite, rządzisz! – Raspu
Żadne z istniejących rozwiązań nie zadziałało, więc szybko zhakowałem skrypt, który wykonałby zadanie. Konwertuje także puste ciągi na wartości null i oddziela wiersz nagłówka dla JSON. Może wymagać dostrojenia w zależności od dialektu CSV i zestawu znaków.
#!/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))
Czy jest to związane z http://johntron.com/creations/csv-to-json/ – David
Nie, z tą różnicą, że używane są te same biblioteki (csv, json). Napisałem swój kod od zera. Pętle są wymagane do przetwarzania, które chciałem zrobić (konwersja zestawu znaków i zastąpienie pustych ciągów null). – Tronic
Zastanawiam się nad konfliktem między wieloma komentarzami, które mówią: "to działało dla mnie", a ten twierdzi, że "żadne z istniejących rozwiązań nie zadziałało". –
Weź szansę na maleńkim bezpłatnego narzędzia:
http://keyangxiang.com/csvtojson/
Wykorzystuje węzła.js csvtojson module
To już nie działa. – gm2008
Link jest aktualny. Powinno działać. – Keyang
Jest na [GitHub] (https://github.com/Keyang/node-csvtojson). To najbardziej elastyczne narzędzie. Chciałem utworzyć tablice zagnieżdżone lub obiekty za pomocą CSV ([przykład] (https://github.com/mdn/learning-area/blob/master/javascript/oojs/json/superheroes.json)). –
Zamiast zakodowanych na sztywno konwerterów, jak o obsłudze CSV dla Jacksona (procesor JSON): https://github.com/FasterXML/jackson-dataformat-csv. Więc rdzeń Jackson może czytać JSON jako POJO, Mapy, JsonNode
, prawie wszystko. Obsługa CSV może zrobić to samo z CSV. Połącz dwa i jest to bardzo potężny, ale prosty konwerter pomiędzy wieloma formatami (są już backendy dla XML, YAML i więcej).
Artykuł, który pokazuje, jak to zrobić, można znaleźć pod numerem here.
Ponieważ PowerShell 3.0 (dostarczany z Windows 8, available for Windows 7 and windows Server 2008 ale nie Windows Vista) można użyć wbudowanego ConvertTo-json commandlet:
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
Działa to dla mnie i biegnie klienta -side: http://www.convertcsv.com/csv-to-json.htm
Dziękuję za sugestię :) Konwerter działa dobrze. – Nekto
Ten zawiera ogranicznik tabulacji, dzięki czemu można wklejać bezpośrednio z programu Excel. –
Jak zbudowany jest XLS? Czy zakładasz, że pierwszy wiersz to nagłówki kolumn? – SheetJS
CSVkit robi to: http://csvkit.readthedocs.org/en/latest/scripts/csvjson.html – Amanda