.NET에서 JSON을 CSV로 프로그래밍 방식으로 변환

소개

오늘날의 디지털 세계에서는 여러 형식의 데이터를 처리하는 것이 일반화되었으며 JSON(JavaScript Object Notation)은 데이터 교환에 가장 널리 사용되는 형식 중 하나입니다. 하지만 JSON을 CSV(Comma Separated Values)와 같이 분석에 더 쉽게 접근할 수 있는 형식으로 변환해야 하는 경우 어떻게 해야 할까요? 이 튜토리얼에서는 .NET용 Aspose.Cells를 사용하여 JSON을 CSV로 프로그래밍 방식으로 변환하는 과정을 안내합니다. 사용하기 쉬우면서도 강력한 스프레드시트 조작 API입니다.

필수 조건

코드를 살펴보기 전에 필요한 모든 구성 요소와 사용할 도구에 대한 기본적인 이해가 있는지 확인하는 것이 중요합니다. 필요한 사항을 간략히 설명하겠습니다.

  • .NET용 Aspose.Cells: 이것은 JSON을 CSV로 변환하는 데 사용할 기본 라이브러리입니다.여기서 다운로드하세요.
  • Visual Studio: .NET 코드를 작성하고 실행하려면 Visual Studio와 같은 통합 개발 환경(IDE)이 필요합니다.
  • .NET Framework: .NET Framework가 설치되어 있는지 확인하세요. Aspose.Cells는 .NET Core와 .NET Framework 모두와 호환됩니다.
  • C#에 대한 기본 지식: 이 가이드에서는 코드의 모든 부분을 분석하지만, C#에 어느 정도 익숙하다면 도움이 될 것입니다.

패키지 가져오기

.NET 프로젝트에서 Aspose.Cells를 사용하려면 먼저 라이브러리를 설치해야 합니다. NuGet 패키지 관리자를 통해 이를 수행할 수 있습니다.

  1. Visual Studio를 엽니다.
  2. 도구 > NuGet 패키지 관리자 > 솔루션용 NuGet 패키지 관리로 이동합니다.
  3. Aspose.Cells를 검색하여 최신 버전을 설치하세요. 설치가 완료되면 코드에 다음 네임스페이스를 포함해야 합니다.
using Aspose.Cells.Utility;
using System;
using System.IO;

이제 모든 것이 설정되었으니 Aspose.Cells를 사용하여 JSON 파일을 CSV로 변환하는 것이 얼마나 쉬운지 알아보기 위해 코드를 단계별로 나누어 보겠습니다.

1단계: JSON 파일 읽기

우리가 해야 할 첫 번째 일은 파일에서 JSON 데이터를 읽는 것입니다. 우리는 이미 JSON 파일이 있다고 가정하겠습니다(이름을 붙입시다)SampleJson.json) 시스템의 디렉토리에 저장됩니다. 당신은 사용할 수 있습니다File.ReadAllText() JSON 파일의 내용을 문자열로 읽는 C# 메서드.

// 소스 디렉토리
string sourceDir = "Your Document Directory";
// JSON 파일 읽기
string str = File.ReadAllText(sourceDir + "SampleJson.json");

이 단계는 변환 프로세스를 시작하기 위해 원시 JSON 데이터가 필요하기 때문에 중요합니다. 문자열로 읽으면 Aspose.Cells에서 처리되도록 준비하는 것입니다.

2단계: 빈 통합 문서 만들기

Aspose.Cells는 주로 통합 문서(Excel 파일)에서 작동합니다. JSON 데이터 가져오기를 시작하려면 먼저 이 데이터를 삽입할 빈 통합 문서를 만들어야 합니다.

// 빈 통합 문서 만들기
Workbook workbook = new Workbook();

여기서는 결국 CSV 포맷 데이터를 보관할 빈 통합 문서를 초기화합니다. 곧 JSON 데이터로 채워질 Excel에서 빈 스프레드시트를 만드는 것으로 생각하세요.

3단계: 통합 문서의 셀에 액세스

이제 빈 통합 문서가 있으므로 해당 통합 문서의 셀에 액세스해야 합니다.Cells Aspose.Cells의 컬렉션은 JSON 데이터를 저장할 워크시트의 모든 셀을 나타냅니다.

// 세포를 얻으세요
Cells cells = workbook.Worksheets[0].Cells;

이 코드 조각은 첫 번째 워크시트(인덱스 0의 워크시트)를 선택하고 해당 워크시트를 가져옵니다.Cells 컬렉션. 이러한 셀은 데이터가 추가될 스프레드시트의 그리드와 같습니다.

4단계: JsonLayoutOptions 설정

Aspose.Cells는 JSON 데이터를 가져오는 방법에 대한 여러 가지 사용자 정의 옵션을 제공합니다. 여기서는 다음을 정의합니다.JsonLayoutOptions Aspose가 배열, 숫자 데이터 및 객체 제목을 어떻게 처리해야 하는지 지정합니다.

// JsonLayoutOptions 설정
JsonLayoutOptions importOptions = new JsonLayoutOptions();
importOptions.ConvertNumericOrDate = true;
importOptions.ArrayAsTable = true;
importOptions.IgnoreArrayTitle = true;
importOptions.IgnoreObjectTitle = true;
  • ConvertNumericOrDate: 숫자 또는 날짜 값인 문자열 값을 자동으로 변환합니다.
  • ArrayAsTable: JSON의 배열을 통합 문서의 테이블로 처리합니다.
  • IgnoreArrayTitle 및 IgnoreObjectTitle: 이 옵션은 배열과 객체의 제목을 무시하여 원시 데이터만 가져오도록 합니다.

5단계: JSON 데이터 가져오기

레이아웃 옵션이 설정되면 JSON 데이터를 가져올 시간입니다.JsonUtility.ImportData() 여기서는 메서드가 중요한 작업을 담당하여 JSON 데이터를 통합 문서의 셀에 삽입합니다.

JsonUtility.ImportData(str, cells, 0, 0, importOptions);

이 방법은 여러 가지 매개변수를 사용합니다.

  • str1단계에서 읽은 JSON 문자열입니다.
  • cells: 데이터가 배치될 셀 컬렉션입니다.
  • 0, 0: 이는 데이터가 시작해야 하는 위치(즉, 왼쪽 상단 모서리)를 나타내는 행 및 열 인덱스입니다.
  • importOptions: 4단계에서 설정한 레이아웃 옵션입니다.

6단계: 통합 문서를 CSV로 저장

이제 JSON 데이터가 워크북에 있으므로 워크북을 CSV 파일로 쉽게 저장할 수 있습니다. CSV는 표 형식 데이터를 저장하기 위한 간단하고 가벼운 포맷으로, 데이터 분석에 완벽합니다.

// 출력 디렉토리
string outputDir = "Your Document Directory";
// 워크북 저장
workbook.Save(outputDir + @"SampleJson_out.csv");

이 단계에서는 통합 문서를 CSV 파일로 저장합니다. 경로와 파일 이름을 지정합니다(SampleJson_out.csv) CSV가 저장될 위치입니다.

7단계: 프로세스 확인

모든 것이 예상대로 작동하는지 확인하려면 콘솔에 확인 메시지를 인쇄할 수 있습니다.

Console.WriteLine("ConvertJsonToCsv executed successfully.");

간단한 성공 메시지는 프로세스가 원활하게 진행되었음을 확인하는 데 도움이 됩니다.

결론

Aspose.Cells for .NET을 사용하여 JSON을 CSV로 변환하는 것은 간단하면서도 강력한 프로세스입니다. 몇 줄의 코드만으로 복잡한 JSON 데이터를 더 접근하기 쉬운 CSV 형식으로 변환할 수 있습니다. 배열, 객체 또는 숫자 데이터를 처리하든 Aspose.Cells를 사용하면 필요에 맞게 변환 프로세스를 쉽게 구성할 수 있습니다.

자주 묻는 질문

Aspose.Cells는 대용량 JSON 파일을 처리할 수 있나요?

네, Aspose.Cells는 대용량 데이터 세트를 효율적으로 처리하도록 설계되어 성능 문제 없이 대용량 JSON 파일을 처리하는 데 적합합니다.

CSV 출력을 어떻게 사용자 정의할 수 있나요?

CSV 출력을 사용자 정의하려면 다음을 조정하세요.JsonLayoutOptions 또는 CSV로 저장하기 전에 통합 문서의 서식을 조작합니다.

JSON 변환 중에 특정 데이터를 제외하는 방법이 있나요?

네, 가져오기 전에 JSON을 조정하거나 사용자 정의 코드 로직을 사용하면 특정 데이터 필드를 제외하거나 필터링할 수 있습니다.

Aspose.Cells는 CSV 외에 다른 파일 형식을 지원합니까?

물론입니다! Aspose.Cells는 Excel(XLS, XLSX), PDF, HTML 등 다양한 형식을 지원합니다.

Aspose.Cells를 무료로 사용해 보려면 어떻게 해야 하나요?

당신은 할 수 있습니다여기에서 무료 평가판을 다운로드하세요 구매하기 전에 모든 기능을 테스트해 보세요.