Konwertowanie arkuszy Excel do JSON jest częstym wymogiem przy budowaniu potoków wymiany danych lub zasilaniu interfejsów API. Conholdate.Total for Java jest potężnym SDK, które upraszcza to zadanie dla programistów Java. W tym przewodniku dowiesz się, jak skonfigurować bibliotekę, przejść przez pełną implementację oraz dopasować opcje konwersji do potrzeb Twojego projektu.

Wymagania wstępne i konfiguracja dla Conholdate.Total for Java

Zanim zaczniesz, upewnij się, że masz:

  • Java 17 lub nowszy zainstalowany.
  • Maven 3.6+ do zarządzania zależnościami.
  • Plik Excel (.xlsx), który chcesz przekonwertować.

Dodaj repozytorium Maven oraz zależność Conholdate.Total do swojego pom.xml:

<repositories>
    <repository>
        <id>conholdate-repo</id>
        <name>Conholdate Maven Repository</name>
        <url>https://repository.conholdate.com/repo/</url>
    </repository>
</repositories>

<dependency>
    <groupId>com.conholdate</groupId>
    <artifactId>conholdate-total</artifactId>
    <version>24.9</version>
    <type>pom</type>
</dependency>

Możesz również pobrać najnowsze pliki JAR bezpośrednio ze strony pobierania. Mając zainstalowane SDK, jesteś gotowy, aby rozpocząć konwersję Excel do JSON w Javie.

Konwersja Excel do JSON w Javie: Przewodnik krok po kroku

Krok 1: Załaduj źródłowy dokument Excel

Najpierw określ ścieżkę do źródłowego pliku XLSX i utwórz instancję Conversion. Blok try‑with‑resources zapewnia prawidłowe zwolnienie obiektu konwersji.

String inputFile = "sample.xlsx";
try (Conversion conversion = new Conversion(inputFile)) {
    // conversion object ready
}

Krok 2: Skonfiguruj opcje konwersji JSON

Utwórz obiekt JsonConvertOptions i dostosuj ustawienia, takie jak pretty‑print, włączenie nagłówka, własne formaty dat i liczb oraz rozmiar partii. Te opcje kontrolują, jak konwersja z Excela do JSON w Javie kształtuje ostateczny wynik.

JsonConvertOptions jsonOptions = new JsonConvertOptions();
jsonOptions.setPrettyPrint(true);
jsonOptions.setIncludeHeaders(true);
jsonOptions.setDateFormat(JsonConvertOptions.DateFormat.CUSTOM);
jsonOptions.setCustomDateFormat("yyyy-MM-dd");
jsonOptions.setNumberFormat(JsonConvertOptions.NumberFormat.CUSTOM);
jsonOptions.setCustomNumberFormat("#.##");
jsonOptions.setRowsPerBatch(5000);

Krok 3: Wykonaj konwersję

Podaj nazwę docelowego pliku JSON i wywołaj metodę convert. SDK obsługuje transformację wewnętrznie.

String outputFile = "sample.json";
conversion.convert(outputFile, jsonOptions);

Krok 4: Obsłuż wynik i sprzątanie

Po konwersji wyświetl komunikat potwierdzający. Wszystkie wyjątki są przechwytywane i wypisywane w konsoli.

System.out.println("Conversion completed successfully. JSON saved to: " + outputFile);
} catch (Exception e) {
    System.err.println("Error during Excel to JSON conversion:");
    e.printStackTrace();
}

Po wykonaniu tych kroków konwersja pliku Excel do JSON w Javie jest zakończona i możesz zintegrować wygenerowany JSON ze swoim API lub procesem przetwarzania danych.

Pełna implementacja: konwersja Excela w Javie do JSON

Poniższy przykład demonstruje, jak wykonać konwersję Excel do JSON w języku Java przy użyciu Conholdate.Total for Java.

import com.groupdocs.conversion.Conversion;
import com.groupdocs.conversion.options.convert.JsonConvertOptions;
import com.groupdocs.conversion.options.convert.JsonConvertOptions.DateFormat;
import com.groupdocs.conversion.options.convert.JsonConvertOptions.NumberFormat;

public class ExcelToJsonDemo {
    public static void main(String[] args) {
        // Input Excel file (generic path)
        String inputFile = "sample.xlsx";
        // Desired JSON output file
        String outputFile = "sample.json";

// Perform conversion inside try‑with‑resources to ensure proper cleanup
        try (Conversion conversion = new Conversion(inputFile)) {

// Configure JSON conversion options
            JsonConvertOptions jsonOptions = new JsonConvertOptions();

// Pretty‑print the JSON for readability
            jsonOptions.setPrettyPrint(true);

// Include column headers as JSON property names
            jsonOptions.setIncludeHeaders(true);

// Define how dates and numbers should be formatted in the JSON output
            jsonOptions.setDateFormat(DateFormat.CUSTOM);
            jsonOptions.setCustomDateFormat("yyyy-MM-dd");
            jsonOptions.setNumberFormat(NumberFormat.CUSTOM);
            jsonOptions.setCustomNumberFormat("#.##");

// Optional performance tweak: limit rows processed per batch (useful for very large sheets)
            jsonOptions.setRowsPerBatch(5000);

// Execute the conversion
            conversion.convert(outputFile, jsonOptions);

System.out.println("Conversion completed successfully. JSON saved to: " + outputFile);
        } catch (Exception e) {
            // Basic error handling – in production code you might want more sophisticated logging
            System.err.println("Error during Excel to JSON conversion:");
            e.printStackTrace();
        }
    }
}

Uwaga: Ten przykład kodu demonstruje podstawową funkcjonalność. Przed użyciem go w swoim projekcie upewnij się, że zaktualizowałeś wszystkie ścieżki plików i wartości konfiguracyjne, aby odpowiadały rzeczywistemu środowisku, sprawdź, czy wszystkie wymagane zależności są prawidłowo zainstalowane, oraz dokładnie przetestuj w swoim środowisku deweloperskim. Jeśli napotkasz jakiekolwiek problemy, zapoznaj się z oficjalną dokumentacją lub skontaktuj się z zespołem wsparcia, aby uzyskać pomoc.

Opcje konwersji i ustawienia

SDK oferuje kilka opcji dostosowania wyjścia JSON:

  • Pretty Print - Poprawia czytelność poprzez dodanie wcięć.
    jsonOptions.setPrettyPrint(true);
    
  • Include Headers - Używa pierwszego wiersza arkusza jako nazw właściwości.
    setIncludeHeaders(true) (zobacz referencję API).
  • Custom Date Format - Zdefiniuj wzorzec daty, np. "yyyy-MM-dd".
    setCustomDateFormat("yyyy-MM-dd").
  • Custom Number Format - Kontroluj precyzję liczbową, np. "#.##".
    setCustomNumberFormat("#.##").

Dostosowanie tych ustawień pozwala dopasować wygenerowany JSON do oczekiwań usług lub baz danych downstream.

Podsumowanie

Teraz masz działające konwertowanie Excel do JSON w implementacji Java, napędzane przez Conholdate.Total for Java. SDK zajmuje się ciężką pracą, a konfigurowalne opcje dają Ci kontrolę nad formatowaniem i wydajnością. Pamiętaj, aby uzyskać odpowiednią licencję do użytku produkcyjnego; możesz poprosić o stronę tymczasowej licencji, aby ocenić bibliotekę, lub przejrzeć pełną stronę cenową w celu poznania warunków komercyjnych. Szczęśliwego kodowania!

FAQs

  • Jak wykonać konwersję Excel do JSON w Javie przy użyciu Conholdate.Total?
    Użyj klasy Conversion razem z JsonConvertOptions, jak pokazano w przykładzie kodu. SDK abstrahuje obsługę plików i zapewnia pojedyncze wywołanie convert.

  • Czy mogę dostosować formaty dat i liczb podczas konwersji Excel do JSON w Javie?
    Tak. Metody setCustomDateFormat i setCustomNumberFormat pozwalają zdefiniować wzorce, które odpowiadają oczekiwaniom Twojego systemu docelowego.

  • Jakie opcje licencjonowania są dostępne dla Conholdate.Total for Java?
    Możesz uzyskać tymczasową licencję ewaluacyjną na stronie tymczasowej licencji lub zakupić pełną licencję poprzez stronę cenową.

  • Czy przetwarzanie wsadowe jest obsługiwane dla dużych plików Excel?
    Opcja setRowsPerBatch pozwala przetwarzać arkusze w partiach, co jest idealne w scenariuszach konwersji wsadowej.

Czytaj więcej