تحويل جداول بيانات Excel إلى JSON هو طلب شائع عند بناء خطوط تبادل البيانات أو تغذية واجهات برمجة التطبيقات. Conholdate.Total for Java هو SDK قوي يبسط هذه المهمة لمطوري Java. في هذا الدليل ستتعلم كيفية إعداد المكتبة، واستعراض تنفيذ كامل، وضبط خيارات التحويل بدقة لتتناسب مع احتياجات مشروعك.
المتطلبات المسبقة والإعداد لـ Conholdate.Total for 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: تحميل مستند Excel المصدر
أولاً، حدد مسار ملف XLSX المصدر وأنشئ كائن Conversion. يضمن كتلة try‑with‑resources التخلص الصحيح من كائن التحويل.
String inputFile = "sample.xlsx";
try (Conversion conversion = new Conversion(inputFile)) {
// conversion object ready
}
الخطوة 2: تكوين خيارات تحويل JSON
إنشاء كائن JsonConvertOptions وضبط الإعدادات مثل pretty‑print، تضمين العناوين، تنسيقات مخصصة للتاريخ والرقم، وحجم الدفعة. تتحكم هذه الخيارات في كيفية تشكيل تحويل Excel إلى JSON في Java للنتيجة النهائية.
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 في Java إلى JSON
المثال التالي يوضح كيفية إجراء تحويل 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)(انظر إلى مرجع API). - Custom Date Format - تعريف نمط تاريخ، على سبيل المثال،
"yyyy-MM-dd".setCustomDateFormat("yyyy-MM-dd"). - Custom Number Format - التحكم في دقة الأرقام، على سبيل المثال،
"#.##".setCustomNumberFormat("#.##").
ضبط هذه الإعدادات يتيح لك مطابقة JSON المُولَّد مع توقعات الخدمات أو قواعد البيانات اللاحقة.
الخلاصة
أنت الآن تمتلك تحويلًا فعالًا من Excel إلى JSON في تنفيذ Java مدعومًا بـ Conholdate.Total for Java. يتولى SDK الجزء الأكبر من العمل، بينما تمنحك الخيارات القابلة للتكوين السيطرة على التنسيق والأداء. تذكر الحصول على ترخيص مناسب للاستخدام في الإنتاج؛ يمكنك طلب صفحة الترخيص المؤقت لتقييم المكتبة أو مراجعة صفحة الأسعار الكاملة للشروط التجارية. برمجة سعيدة!
الأسئلة المتكررة
كيف يمكنني إجراء تحويل Excel إلى JSON في Java باستخدام Conholdate.Total؟
استخدم الفئةConversionمعJsonConvertOptionsكما هو موضح في مثال الشيفرة. يقوم SDK بتجريد معالجة الملفات ويوفر استدعاءconvertواحد.هل يمكنني تخصيص تنسيقات التاريخ والرقم أثناء تحويل Excel إلى JSON في Java؟
نعم. تسمح لك طرقsetCustomDateFormatوsetCustomNumberFormatبتعريف الأنماط التي تتطابق مع توقعات نظامك المستهدف.ما هي خيارات الترخيص المتاحة لـ Conholdate.Total for Java؟
يمكنك الحصول على ترخيص تقييم مؤقت من صفحة الترخيص المؤقت أو شراء ترخيص كامل عبر صفحة التسعير.هل يتم دعم المعالجة الدفعية لملفات Excel الكبيرة؟
خيارsetRowsPerBatchيتيح لك معالجة أوراق العمل على دفعات، وهو مثالي لسيناريوهات التحويل الدفعي.
