Chuyển đổi JSON sang Excel C#

MS Excel cung cấp nhiều tính năng để giữ và sắp xếp dữ liệu dạng bảng ở dạng trang tính. Cùng với tổ chức dữ liệu, bạn có thể thực hiện nhiều thao tác khác nhau như sắp xếp dữ liệu, vẽ biểu đồ, tính toán toán học, v.v. JSON, mặt khác, là một định dạng được sử dụng rộng rãi để lưu trữ và truyền dữ liệu dưới dạng cặp khóa-giá trị. Thông thường, nó được sử dụng để truyền dữ liệu từ máy chủ đến các trang web. Có thể xảy ra trường hợp bạn nhận được dữ liệu ở dạng JSON, tức là từ một dịch vụ web và muốn lưu dữ liệu đó vào một trang tính Excel. Trong trường hợp như vậy, cách tối ưu là tự động hóa quy trình bằng cách nhập dữ liệu từ JSON sang trang tính Excel theo chương trình.

Để giải quyết tình huống nêu trên trong ASP.NET hoặc bất kỳ ứng dụng dựa trên C# nào, tôi sẽ chỉ cho bạn cách nhập dữ liệu JSON vào tệp Excel. Trong bài viết này, bạn sẽ học cách:

  • nhập dữ liệu từ JSON vào trang tính Excel trong C#
  • áp dụng định dạng ô khi chuyển đổi JSON sang Excel trong C#

Để nhập dữ liệu từ tệp JSON, chúng tôi sẽ tận dụng khả năng của Aspose.Cells for .NET. Đây là một API mạnh mẽ để thao tác các tệp bảng tính trong các ứng dụng dựa trên .NET, .NET Core & Xamarin. Bạn có thể cài đặt gói API từ NuGet hoặc tải xuống tệp DLL trực tiếp từ phần Tải xuống.

Nhập dữ liệu từ JSON sang Excel trong C#

Sau đây là các bước để nhập dữ liệu từ JSON sang Excel XLSX:

Mẫu mã sau đây cho biết cách nhập dữ liệu từ JSON sang Excel trong C#.

// Tạo một đối tượng Workbook
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.Worksheets[0];

// Đọc tệp JSON
string jsonInput = File.ReadAllText("Data.json");            

// Đặt tùy chọn JsonLayout
JsonLayoutOptions options = new JsonLayoutOptions(); 
options.ArrayAsTable = true;

// Nhập dữ liệu JSON
JsonUtility.ImportData(jsonInput, worksheet.Cells, 0, 0, options);

// Lưu tệp Excel
workbook.Save("Import-Data-JSON-To-Excel.xlsx");

Nhập dữ liệu JSON

[
   {
       Name: "John Smith",
       Contract:
       [
           {
               Client:
               {
                   Name: "A Company"
               },
               Price: 1200000
           },
           {
               Client:
               {
                   Name: "B Ltd."
               },
               Price: 750000
           },
           {
               Client:
               {
                   Name: "C & D"
               },
               Price: 350000
           }
       ]
   },
   {
       Name: "Tony Anderson",
       Contract:
       [
           {
               Client:
               {
                   Name: "E Corp."
               },
               Price: 650000
           },
           {
               Client:
               {
                   Name: "F & Partners"
               },
               Price: 550000
           }
       ]
   },
   {
       Name: "Jimmy Adams",
       Contract:
       [
           {
               Client:
               {
                   Name: "MIT"
               },
               Price: 800000
           },
           {
               Client:
               {
                   Name: "SnB"
               },
               Price: 520000
           }
       ]
   },
]

Xuất bảng tính Excel

JSON sang Excel

Nhập JSON vào Excel với Kiểu định dạng trong C#

Bạn cũng có thể áp dụng các kiểu khác nhau cho trang tính Excel khi nhập dữ liệu từ tệp JSON. Lớp CellsFactory của Aspose.Cells for .NET cung cấp nhiều tùy chọn để đặt các tham số kiểu dáng khác nhau như phông chữ, màu sắc, căn chỉnh, kiểu đường viền, v.v. Sau đây là các bước để nhập dữ liệu từ JSON sang Excel cùng với kiểu dáng.

Mẫu mã sau áp dụng các kiểu khác nhau khi nhập dữ liệu từ JSON sang Excel trong C#.

// Tạo một đối tượng Workbook
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.Worksheets[0];

// Đọc tệp JSON
string jsonInput = File.ReadAllText("Data.json");

// Đặt kiểu
CellsFactory factory = new CellsFactory();
Style style = factory.CreateStyle();
style.HorizontalAlignment = TextAlignmentType.Center;
style.Font.Color = System.Drawing.Color.BlueViolet;
style.Font.IsBold = true;

// Đặt tùy chọn JsonLayout
JsonLayoutOptions options = new JsonLayoutOptions();
options.TitleStyle = style;
options.ArrayAsTable = true;

// Nhập dữ liệu JSON
JsonUtility.ImportData(jsonInput, worksheet.Cells, 0, 0, options);

// Lưu tệp Excel
workbook.Save("Import-Data-JSON-To-Excel.xlsx");

Xuất bảng tính Excel

JSON sang Excel C#

Xem thêm

Tìm hiểu thêm về Aspose.Cells for .NET

Bạn có thể khám phá thêm về Aspose.Cells for .NET bằng cách sử dụng tài liệu và mã nguồn ví dụ.