CSV / XLS를 JSON으로 변환 하시겠습니까? [닫은]


142

XLS를 JSON으로 변환하는 응용 프로그램이 있는지 아는 사람이 있습니까?

또한 CSV로 변환기를 설정합니다. 아무것도 없으면 스스로 작성해야 할 수도 있기 때문입니다.


XLS는 어떻게 구성되어 있습니까? 첫 번째 행이 열 헤더라고 가정합니까?
SheetJS


CsvCruncher는 CSV를 SQL 테이블로 가져오고 SELECT를 수행하여 결과를 CSV 또는 JSON으로 내보내도록하겠습니다. github.com/OndraZizka/csv-cruncher
Ondra Žižka

이것은 팬더 데이터 프레임을 사용하여 쉽게 수행 할 수 있습니다. csv를 pandas 데이터 프레임으로 가져 와서 json으로 은닉하십시오.
R4444

1
Data Transformer (면책 조항-개발자입니다) 를 살펴보십시오 . CSV, JSON, XML 및 YML을 로컬로 변환합니다. 다양한 변환 설정 (기본 설정)을 제공하므로 목적에 따라 결과를 조정할 수 있습니다. Mac App Store 또는 Microsoft Store 에서 구할 수 있습니다 .
지오 시스템

답변:


77

이것은 나를 위해 완벽하게 작동했으며 파일 업로드가 필요하지 않습니다.

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


텍스트로 변환하려면 코드에 붙여 넣을 수 있습니다. "Actionscript"옵션을 사용하십시오.
Steve O'Connor

불행하게도이 웹 사이트는 내려 갔다
마젠 Kasser에게

3
소스가 GIT에있는 것 같습니다 : github.com/cparker15/csv-to-json?files=1
zmonteca

@zmonteca은 링크 답을 업데이트
robertc

고맙습니다, 작동합니다. 이 프로젝트의 종속성을 업데이트하면됩니다. 그렇지 않으면 실행되지 않습니다.
hd84335

195

내가 만든이 도구를 사용해보십시오.

미스터 데이터 컨버터

JSON, XML 등으로 변환합니다.

모든 클라이언트 쪽이므로 데이터가 컴퓨터를 떠나지 않습니다.


재미있어 보인다, 내가 다시 필요할 때 이것으로 돌아와서
mkoryak

6
괜찮지 만 따옴표를 올바르게 이스케이프하지는 않습니다. CSV에 큰 따옴표가 포함되어 있으면 출력에서 ​​이스케이프되지 않습니다. 손으로해야 할 수도 있습니다. 그럼에도 불구하고 매우 편리한 도구입니다.
barrycarton

훌륭한 도구! 잘 했어. @ barrycarton Github에서 최신 코드를 가져 오면 이것이 수정 된 것 같습니다. 위의 링크에있는 것은 오래된 것 같습니다.
Bach

안녕하세요 @ Shan Carter 사용자가 Excel 파일을로드하고 Excel의 내용을 복사하지 않기를 원합니다. 현재 코드로 가능합니까, 아니면 포크해야합니다 (가능한 경우). 당신의 생각을 공유하십시오.
Rahul Gautam

1
멋진 도구, @Shan Carter. 나는 내 포크에 몇 가지 사항수정 하기 위해 자유를 얻었다
thdoan September

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 | 추가 콘텐츠
경로

28

기존 솔루션을 찾을 수 없으면 Java로 기본 솔루션을 쉽게 구축 할 수 있습니다. 방금 고객을 위해 하나를 작성했으며 연구 도구를 포함하여 불과 몇 시간이 걸렸습니다.

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이 저장되어있는 경우 처음 두 줄의 파일과 inp의 값은 무엇입니까?
Kate




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


동일한 라이브러리 (csv, json)가 사용되는 것을 제외하고는 아닙니다. 코드를 처음부터 작성했습니다. 내가 원하는 처리 (문자 세트 변환 및 빈 문자열을 null로 바꾸기)에 루프가 필요합니다.
Tronic

"이것은 저에게 효과적"이라고 말하는 많은 의견과 "기존 솔루션 중 어느 것도 효과가 없다"고 주장하는 의견 사이의 충돌에 대해 궁금합니다.
B. 클레이 섀넌

4

하드 코딩 된 변환기 대신 Jackson (JSON 프로세서)에 대한 CSV 지원은 https://github.com/FasterXML/jackson-dataformat-csv 입니다. 코어 잭슨은 JSON을 POJO, Maps JsonNode등 거의 모든 것으로 읽을 수 있습니다 . CSV 지원은 CSV와 동일하게 수행 할 수 있습니다. 두 가지를 결합하면 여러 형식간에 강력하지만 간단한 변환기입니다 (XML의 백엔드, YAML 및 기타 추가 기능이 있음).

이 작업을 수행하는 방법을 보여주는 기사는 여기 에서 찾을 수 있습니다 .


3

이것이 도움이되는지 확인하십시오 : CSV로 돌아 가기-CSV 텍스트를 객체로 변환; JSON을 통해

솔루션을 제공하기위한 C # 코드가 포함 된 2008 년 11 월에 게시 된 블로그 게시물입니다.

블로그 게시물의 소개에서 :

Json은 Xml을 읽고 쓰는 것이 더 쉽습니다. CSV (쉼표로 구분 된 값)가 Json보다 읽고 쓰기가 더 쉽습니다. CSV에는 Excel과 같은 도구를 사용하여 쉽게 작업하고 만들 수 있습니다. 따라서 다음 앱에 대한 구성 또는 데이터 파일을 만들려면 CSV를 JSON으로 POCO 객체로 변환하는 코드가 있습니다.


1
감사. 이 코드를 자바로 포팅해야하지만 휠을 재발 명하는 것이 좋습니다
mkoryak

c #-> java는 어쨌든 꽤 잘 어울립니다.
qxotk
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.