การแปลงสเปรดชีต Excel เป็น JSON เป็นความต้องการที่พบบ่อยเมื่อสร้าง pipeline การแลกเปลี่ยนข้อมูลหรือส่งข้อมูลให้กับ API. 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 reference). - Custom Date Format - กำหนดรูปแบบวันที่, เช่น
"yyyy-MM-dd".setCustomDateFormat("yyyy-MM-dd"). - Custom Number Format - ควบคุมความแม่นยำของตัวเลข, เช่น
"#.##".setCustomNumberFormat("#.##").
การปรับการตั้งค่าเหล่านี้ช่วยให้คุณทำให้ JSON ที่สร้างขึ้นสอดคล้องกับความคาดหวังของบริการหรือฐานข้อมูลที่ต่อมา
สรุป
ตอนนี้คุณมีการแปลง Excel เป็น JSON ที่ทำงานได้ใน Java implementation โดยใช้ Conholdate.Total for Java. SDK จะจัดการงานหนักส่วนใหญ่ ในขณะที่ตัวเลือกที่กำหนดค่าได้ให้คุณควบคุมการจัดรูปแบบและประสิทธิภาพ จำไว้ว่าให้รับใบอนุญาตที่เหมาะสมสำหรับการใช้งานในสภาพแวดล้อมการผลิต; คุณสามารถขอ temporary license page เพื่อประเมินไลบรารีหรือดู pricing page สำหรับเงื่อนไขเชิงพาณิชย์ Happy coding!
คำถามที่พบบ่อย
ฉันจะทำการแปลง Excel เป็น JSON ใน Java ด้วย Conholdate.Total อย่างไร?
ใช้คลาสConversionร่วมกับJsonConvertOptionsตามตัวอย่างโค้ด SDK จะจัดการไฟล์และให้การเรียกconvertเพียงครั้งเดียวฉันสามารถกำหนดรูปแบบวันที่และตัวเลขได้เองระหว่างการแปลง Excel เป็น JSON ใน Java หรือไม่?
ใช่. เมธอดsetCustomDateFormatและsetCustomNumberFormatให้คุณกำหนดรูปแบบที่ตรงกับความคาดหวังของระบบเป้าหมายของคุณ.ตัวเลือกการให้สิทธิ์ใช้งานที่มีสำหรับ Conholdate.Total for Java คืออะไร?
คุณสามารถรับใบอนุญาตการประเมินชั่วคราวได้จาก หน้าลิขสิทธิ์ชั่วคราว หรือซื้อใบอนุญาตเต็มรูปแบบผ่าน หน้าราคา.การประมวลผลแบบแบตช์รองรับไฟล์ Excel ขนาดใหญ่หรือไม่?
ตัวเลือกsetRowsPerBatchช่วยให้คุณสามารถประมวลผลแผ่นงานเป็นชิ้นส่วน ซึ่งเหมาะสำหรับสถานการณ์การแปลงแบบแบตช์
