تبدیل صفحات گسترده Excel به JSON یک نیاز مکرر هنگام ساخت خطوط لوله تبادل داده یا تغذیه APIها است. Conholdate.Total for Java یک SDK قدرتمند است که این کار را برای توسعهدهندگان Java ساده میکند. در این راهنما خواهید آموخت که چگونه کتابخانه را تنظیم کنید، یک پیادهسازی کامل را مرور کنید، و گزینههای تبدیل را برای مطابقت با نیازهای پروژهتان بهدقت تنظیم کنید.
پیشنیازها و راهاندازی برای Conholdate.Total برای Java
قبل از شروع، مطمئن شوید که دارید:
- Java 17 یا جدیدتر نصب شده.
- Maven 3.6+ برای مدیریت وابستگیها.
- یک فایل Excel (
.xlsx) که میخواهید تبدیل کنید.
مخزن Maven و وابستگی Conholdate.Total را به فایل 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>
همچنین میتوانید آخرین JARها را مستقیماً از صفحهٔ دانلود دریافت کنید. با وجود SDK، آمادهاید تا تبدیل Excel به JSON را در Java آغاز کنید.
تبدیل Excel به JSON در Java: راهنمای گامبهگام
مرحله 1: بارگذاری سند اکسل منبع
ابتدا مسیر فایل منبع XLSX را مشخص کنید و یک نمونه Conversion ایجاد کنید. بلوک try‑with‑resources اطمینان میدهد که شی تبدیل بهدرستی آزاد شود.
String inputFile = "sample.xlsx";
try (Conversion conversion = new Conversion(inputFile)) {
// conversion object ready
}
مرحله ۲: پیکربندی گزینههای تبدیل JSON
یک شیء JsonConvertOptions ایجاد کنید و تنظیماتی مانند چاپ زیبا (pretty‑print)، گنجاندن سرصفحه، قالبهای سفارشی تاریخ و عدد، و اندازهٔ دستهای را تنظیم کنید. این گزینهها کنترل میکنند که تبدیل اکسل به JSON در جاوا خروجی نهایی را چگونه شکل میدهد.
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);
گام 3: اجرای تبدیل
نام فایل JSON هدف را ارائه دهید و متد convert را فراخوانی کنید. SDK تبدیل را بهصورت داخلی مدیریت میکند.
String outputFile = "sample.json";
conversion.convert(outputFile, jsonOptions);
مرحله 4: پردازش نتیجه و پاکسازی
پس از تبدیل، یک پیام تأیید خروجی میشود. هر استثنایی گرفته شده و در کنسول چاپ میشود.
System.out.println("Conversion completed successfully. JSON saved to: " + outputFile);
} catch (Exception e) {
System.err.println("Error during Excel to JSON conversion:");
e.printStackTrace();
}
با این مراحل، تبدیل Excel به JSON در Java کامل شد و میتوانید JSON تولید شده را در API یا جریان کاری پردازش دادههای خود ادغام کنید.
پیادهسازی کامل: تبدیل Excel به JSON در Java
مثال زیر نشان میدهد که چگونه میتوان تبدیل Excel به JSON را در Java با استفاده از 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();
}
}
}
توجه: این مثال کد عملکرد اصلی را نشان میدهد. قبل از استفاده از آن در پروژه خود، اطمینان حاصل کنید که مسیرهای فایل و مقادیر پیکربندی را بهگونهای بهروزرسانی کنید که با محیط واقعی شما مطابقت داشته باشد، بررسی کنید که تمام وابستگیهای مورد نیاز بهدرستی نصب شدهاند و بهطور کامل در محیط توسعه خود تست کنید. اگر با مشکلی مواجه شدید، لطفاً به مستندات رسمی مراجعه کنید یا برای دریافت کمک با تیم پشتیبانی تماس بگیرید.
گزینهها و تنظیمات تبدیل
SDK چند گزینه برای سفارشیسازی خروجی JSON ارائه میدهد:
- Pretty Print - خوانایی را با افزودن تورفتگی بهبود میبخشد.
jsonOptions.setPrettyPrint(true); - Include Headers - از ردیف اول کاربرگ به عنوان نامهای ویژگی استفاده میکند.
setIncludeHeaders(true)(see the مرجع API). - Custom Date Format - یک الگوی تاریخ تعریف میکند، به عنوان مثال،
"yyyy-MM-dd".setCustomDateFormat("yyyy-MM-dd"). - Custom Number Format - دقت عددی را کنترل میکند، به عنوان مثال،
"#.##".setCustomNumberFormat("#.##").
تنظیم این تنظیمات به شما امکان میدهد JSON تولید شده را با انتظارات سرویسها یا پایگاههای داده پاییندست همراستا کنید.
نتیجهگیری
شما اکنون یک تبدیل اکسل به JSON کارا در پیادهسازی جاوا دارید که توسط Conholdate.Total for Java قدرت میگیرد. SDK کار سنگین را انجام میدهد، در حالی که گزینههای قابل تنظیم به شما کنترل بر قالببندی و عملکرد میدهند. به یاد داشته باشید برای استفاده در تولید یک مجوز مناسب دریافت کنید؛ میتوانید یک صفحه مجوز موقت درخواست کنید تا کتابخانه را ارزیابی کنید یا صفحه کامل قیمتگذاری را برای شرایط تجاری مرور کنید. کدنویسی خوش!
سوالات متداول
چگونه تبدیل اکسل به JSON را در جاوا با Conholdate.Total انجام دهم؟
از کلاسConversionهمراه باJsonConvertOptionsهمانطور که در مثال کد نشان داده شده استفاده کنید. SDK مدیریت فایلها را انتزاع میکند و یک فراخوانیconvertتک را فراهم میآورد.آیا میتوانم قالبهای تاریخ و عدد را در حین تبدیل اکسل به JSON در جاوا سفارشی کنم؟
بله. متدهایsetCustomDateFormatوsetCustomNumberFormatبه شما امکان میدهند الگوهایی را تعریف کنید که با انتظارات سیستم هدف شما مطابقت داشته باشند.چه گزینههای مجوزی برای Conholdate.Total for Java موجود است؟
میتوانید یک مجوز ارزیابی موقت را از temporary license page دریافت کنید یا یک مجوز کامل را از طریق pricing page خریداری کنید.آیا پردازش دستهای برای فایلهای بزرگ Excel پشتیبانی میشود؟
گزینهsetRowsPerBatchبه شما امکان میدهد تا ورقهای کاری را به صورت بخشهای کوچک پردازش کنید، که برای سناریوهای تبدیل دستهای ایدهآل است.
