CSV / XLSをJSONに変換しますか?[閉まっている]


142

できればXLSをJSONに変換できるアプリケーションがあるかどうか誰か知っていますか?

私はまた、CSVからのコンバーターに落ち着きます。なぜなら、周りに何もない場合は、おそらく自分で書く必要があるからです。


XLSはどのように構成されていますか?最初の行が列ヘッダーであると思いますか?
SheetJS 2013年


CsvCruncherはCSVをSQLテーブルとして受け取り、SELECTを実行して、結果をCSVまたはJSONとしてエクスポートします。github.com/OndraZizka/csv-cruncher
Ondraジシュカ

これは、pandasデータフレームを使用して簡単に行うことができます。csvをpandasデータフレームにインポートし、jsonに変換します。
R4444 2018

1
Data Transformerをご覧になることをお勧めします(免責事項-私はその開発者です)。ローカルでCSV、JSON、XML、YMLの間で変換します。目的に応じて結果を調整できるように、多くの変換設定が(適切なデフォルトで)提供されています。Mac App StoreまたはMicrosoft Storeから入手できます。
Geo Systems

回答:


77

これは私にとって完璧に機能し、ファイルのアップロードは必要ありません:

https://github.com/cparker15/csv-to-json?files=1


コードに貼り付けることができるテキストに変換する場合は、[Actionscript]オプションを使用します。
Steve O'Connor

残念ながらこのウェブサイトはダウンしました
Mazen Kasser 2013年

3
ソースはGITにあるようです:github.com/cparker15/csv-to-json
files=

@zmonteca回答をリンクで更新しました
robertc 2014年

ありがとうございます。このプロジェクトの依存関係を更新する必要があるだけです。それ以外の場合、実行に失敗します
hd84335

195

私が作ったこのツールを試すことができます:

Mr. Data Converter

JSON、XMLなどに変換します。

すべてクライアント側でもあるため、データがコンピューターから送信されることはありません。


面白そうだ、病気がまた必要になったらこれに戻る
mkoryak

6
それは問題ありませんが、引用符を正しくエスケープしないことに注意してください。CSVに二重引用符が含まれている場合、出力はそれをエスケープしません。手作業で行う必要がある場合があります。それにもかかわらず、非常に便利なツールです。
バリーカートン、2011年

素晴らしいツール!うまくやった。@barrycarton Githubから最新のコードをプルした場合、これは修正されたようです。上のリンクにあるものは時代遅れのようです。
バッハ

こんにちは@Shan CarterユーザーにExcelファイルをロードしてもらいたいだけです。Excelのコンテンツをコピーしないでください。現在のコードで可能ですか、それともフォークする必要がありますか(可能であれば)。あなたの考えを共有してください。
Rahul Gautam 2013

1
素晴らしいツール、@ Shan Carter。私はここで私のフォークのいくつかのことを自由に修正しましたthdoan.github.io/mr-data-converter
thdoan

38

Powershell 3.0以降(Windows 8に同梱されており、Windows 7とWindows Server 2008利用できますが、Windows Vistaでは利用できません)、組み込みのconvertto-jsonコマンドレットを使用できます。

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              

Technetのオンラインヘルプページ


7
追加のクレジット:jsonをファイルに保存... $ topicsjson | Add-Content -Path "mydata.json"
brady321

28

既存のソリューションが見つからない場合、Javaで基本的なソリューションを構築するのは非常に簡単です。私はクライアント用に1つ書いただけで、調査ツールを含めて数時間しかかかりませんでした。

Apache POIはExcelバイナリを読み取ります。 http://poi.apache.org/

JSONObjectはJSONを構築します

その後は、Excelデータの行を繰り返し処理し、JSON構造を構築するだけです。基本的な使用法のいくつかの疑似コードを以下に示します。

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();

E:/exceloutput.xlsxにExcelが保存されている場合。最初の2行のfileとinpの値は何ですか?
ケイト



6

小さな無料ツールを試してみてください:

http://keyangxiang.com/csvtojson/

node.js csvtojsonモジュールを利用します


それはもう生きていません。
gm2008

リンクは最新です。うまくいくはずです。
Keyang

それは上だGitHubの。これは最も柔軟なツールです。CSVを使用してネストされた配列またはオブジェクトを作成する方法が必要でした()。
Michael McGinnis 2017

5

既存のソリューションはどれも機能しなかったので、私はすぐにその仕事をするスクリプトをハッキングしました。また、空の文字列をnullに変換し、JSONのヘッダー行を分離します。あなたが持っているCSVの方言と文字セットに応じて調整する必要があるかもしれません。

#!/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))

これはに関連しているjohntron.com/creations/csv-to-json
デヴィッド・

いいえ、同じライブラリ(csv、json)が使用されていることを除いて。私はコードを一から書きました。ループは、私がやりたかった処理(charset変換と空の文字列をnullで置き換える)に必要です。
Tronic

「これでうまくいった」というコメントの多くと、「既存の解決策はどれもうまくいかなかった」と主張するコメントの間に矛盾があるのではないかと思います。
B.クレイシャノン

4

ハードコードされたコンバーターの代わりに、Jackson(JSONプロセッサー)のCSVサポートはどうですか:https : //github.com/FasterXML/jackson-dataformat-csv。したがって、コアジャクソンはJSONをPOJO、マップ、などJsonNode、ほとんど何でも読み込むことができます。また、CSVサポートはCSVでも同じことができます。2つを組み合わせると、非常に強力ですが、複数のフォーマット間の単純なコンバーターになります(XML、YAMLのバックエンドがすでにあり、さらに追加されています)。

これを行う方法を示す記事はここにあります


3

これが役立つかどうかを確認します。CSVに戻る-CSVテキストをオブジェクトに変換します。JSON経由

これは、ソリューションを提供するC#コードを含む、2008年11月に公開されたブログ投稿です。

ブログ投稿のイントロから:

Jsonの方がXmlより読み書きが簡単なので、したがって、CSV(カンマ区切り値)は、Jsonよりも読み書きが簡単です。CSVには、Excelやその他のツールも用意されており、簡単に操作および作成できます。したがって、次のアプリの構成またはデータファイルを作成したい場合は、CSVをJSONからPOCOオブジェクトに変換するコードを次に示します


1
ありがとう。これはJavaに移植する必要がありますが、ホイールを再発明するのが上手です
mkoryak 2009年

それが機能してうれしい、c#-> javaはとにかくかなり良いマッチです。
qxotk 2009年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.