將 HTML 報告轉換為 Excel 試算表是基於 Java 的 Web 應用程式常見的需求,這類應用需要讓使用者下載分析報告或發票。GroupDocs.Conversion Cloud SDK for Java 提供了強大的 API,能在不需要本機 Office 安裝的情況下處理格式轉換的繁重工作。在本指南中,您將了解如何設定 SDK、編寫轉換程式碼,並使用 cURL 通過 REST 介面調用同一服務。完成後,您即可在伺服器、Servlet、Spring Boot 應用或任何多執行緒的 Java 服務中嵌入 HTML 到 XLSX 的轉換功能。
在 Java 中將 HTML 報告匯出為 XLSX - 要求
許多企業門戶會產生動態的 HTML 儀表板,使用者希望將其匯出為 XLSX 工作簿以進行離線分析。典型需求包括:
- 存取儲存在雲端儲存或即時產生的 HTML 原始碼。
- 在轉換過程中保留表格結構、cell 樣式和數字格式。
- 能夠在後端伺服器、Servlet 容器或微服務內執行轉換,而無需安裝 Microsoft Office。
手動複製‑貼上或客戶端庫無法保證一致的格式,尤其是在處理大型報告或高併發場景時,例如 Java 中的 HTML 到 XLSX 轉換服務器。
利用 GroupDocs.Conversion Cloud SDK for Java 滿足導出需求
SDK 提供基於雲端的轉換引擎,支援 HTML 作為輸入、XLSX 作為輸出,無需本機 Office 元件。符合需求的主要功能包括:
- 雲端處理 - 重量級轉換在 GroupDocs 伺服器上執行,適合在 Java 中的 HTML 到 XLSX 轉換 servlet 或 Spring Boot Web 應用程式。
- 可配置選項 - 您可以保留原始格式、設定工作表名稱,並透過
XlsxConvertOptions控制儲存格資料類型。 - 執行緒安全客戶端 - 適用於 Java 中的 HTML 到 XLSX 轉換多執行緒,實現高吞吐量的批次作業。
在 Java 中將 HTML 轉換為 XLSX:實作
安裝 GroupDocs.Conversion Cloud SDK
將 SDK 添加到您的 Maven 項目中:
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-conversion-cloud</artifactId>
<version>23.12</version>
</dependency>
或執行安裝指令:
mvn install com.groupdocs:groupdocs-conversion-cloud
初始化 API 客戶端
使用您的憑證建立 ApiClient,並實例化 ConversionApi。
import com.groupdocs.conversion.cloud.ApiClient;
import com.groupdocs.conversion.cloud.api.ConversionApi;
ApiClient apiClient = new ApiClient("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET");
ConversionApi conversionApi = new ConversionApi(apiClient);
設定來源檔案資訊
指定位於預設雲端儲存中的 HTML 檔案。
import com.groupdocs.conversion.cloud.model.FileInfo;
FileInfo sourceFile = new FileInfo();
sourceFile.setFilePath("input.html"); // path in the cloud storage
sourceFile.setStorageName("DefaultStorage"); // optional
配置 XLSX 轉換選項
調整選項,例如保留原始格式。
import com.groupdocs.conversion.cloud.model.XlsxConvertOptions;
XlsxConvertOptions xlsxOptions = new XlsxConvertOptions();
xlsxOptions.setPreserveOriginalFormatting(true);
執行轉換並取得結果
建立請求,執行它,並取得輸出路徑。
import com.groupdocs.conversion.cloud.model.ConvertDocumentRequest;
import com.groupdocs.conversion.cloud.model.ConvertDocumentResponse;
ConvertDocumentRequest request = new ConvertDocumentRequest();
request.setFileInfo(sourceFile);
request.setFormat("xlsx"); // target format
request.setConvertOptions(xlsxOptions);
request.setOutputPath("output.xlsx"); // desired output path
try {
ConvertDocumentResponse response = conversionApi.convertDocument(request);
System.out.println("Conversion successful. Output file: " + response.getPath());
} catch (Exception e) {
System.err.println("Error during conversion: " + e.getMessage());
e.printStackTrace();
}
使用 Java 將 HTML 文件轉換為 XLSX - 完整程式碼範例
以下範例將所有部分組合在單一可執行的類別中。
import com.groupdocs.conversion.cloud.ApiClient;
import com.groupdocs.conversion.cloud.api.ConversionApi;
import com.groupdocs.conversion.cloud.model.ConvertDocumentRequest;
import com.groupdocs.conversion.cloud.model.ConvertDocumentResponse;
import com.groupdocs.conversion.cloud.model.FileInfo;
import com.groupdocs.conversion.cloud.model.XlsxConvertOptions;
public class HtmlToXlsxConversionExample {
public static void main(String[] args) {
// Initialize API client (replace with your actual credentials)
ApiClient apiClient = new ApiClient("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET");
ConversionApi conversionApi = new ConversionApi(apiClient);
// Define source HTML file information
FileInfo sourceFile = new FileInfo();
sourceFile.setFilePath("input.html"); // path in the cloud storage
sourceFile.setStorageName("DefaultStorage"); // optional, use default if omitted
// Set conversion options specific to XLSX output
XlsxConvertOptions xlsxOptions = new XlsxConvertOptions();
// Example option: preserve original formatting (if needed)
xlsxOptions.setPreserveOriginalFormatting(true);
// Build conversion request
ConvertDocumentRequest request = new ConvertDocumentRequest();
request.setFileInfo(sourceFile);
request.setFormat("xlsx"); // target format
request.setConvertOptions(xlsxOptions);
request.setOutputPath("output.xlsx"); // desired output path in cloud storage
try {
// Perform conversion
ConvertDocumentResponse response = conversionApi.convertDocument(request);
System.out.println("Conversion successful. Output file: " + response.getPath());
} catch (Exception e) {
System.err.println("Error during conversion: " + e.getMessage());
e.printStackTrace();
}
}
}
注意: 此程式碼範例展示了核心功能。在您的專案中使用之前,請確保更新檔案路徑(
input.html、output.xlsx)以符合實際檔案位置,驗證所有必要的相依性已正確安裝,並在開發環境中徹底測試。如遇任何問題,請參閱官方文件或聯繫支援團隊以獲得協助。
使用 REST 和 cURL 從 HTML 執行 XLSX 匯出
您可以透過直接呼叫 REST API 來實現相同的轉換,而無需編寫 Java 程式碼。流程與 SDK 步驟相同:取得令牌、上傳 HTML 檔案、請求轉換,並下載 XLSX 結果。
取得存取令牌
curl -X POST "https://api.groupdocs.cloud/v2.0/connect/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"
上傳來源 HTML
curl -X PUT "https://api.groupdocs.cloud/v2.0/storage/file/input.html" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: text/html" \
--data-binary @input.html
請求轉換
curl -X POST "https://api.groupdocs.cloud/v2.0/conversion/convert" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"fileInfo": {
"filePath": "input.html",
"storageName": "DefaultStorage"
},
"outputPath": "output.xlsx",
"format": "xlsx",
"convertOptions": {
"preserveOriginalFormatting": true
}
}'
下載 XLSX 結果
curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/output.xlsx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o output.xlsx
欲取得完整的參數清單與其他範例,請參閱官方 API 文件。
結論
HTML 轉 XLSX 的 Java 轉換在利用基於雲端的 GroupDocs.Conversion Cloud SDK for Java 處理時變得簡單直觀。該 SDK 抽象化了 HTML 表格解析、樣式處理以及生成符合標準的 XLSX 檔案的複雜性,使其非常適合伺服器端、Servlet 為基礎或 Spring Boot 網頁應用程式。無論您是構建專用的轉換伺服器、微服務,還是多執行緒批次處理器,同一套 API 都能擴展以滿足負載。請記得從 臨時授權頁面 獲取臨時授權以進行評估,並查看生產環境使用的定價細節。透過本指南中的程式碼和 cURL 範例,您現在可以將 HTML 轉 XLSX 匯出整合到任何 Java 解決方案中。
常見問題
如何在 Java servlet 中執行 HTML 轉換為 XLSX?
建立一個 servlet,接收上傳的 HTML 檔案,使用 GroupDocs.Conversion Cloud SDK for Java 呼叫 convertDocument,並將產生的 XLSX 串流寫回 HTTP 回應。SDK 的執行緒安全客戶端在 servlet 容器中運作良好。
是否可以在 Java 中將 HTML 轉換為 XLSX 作為微服務運行?
是的。將轉換邏輯封裝在輕量級的 Spring Boot 應用程式中,暴露 REST 端點,並讓 SDK 處理實際的格式轉換。此方法符合在 Java 中的 HTML 轉 XLSX 微服務模式。
我可以在多執行緒的 Java 應用程式中將 HTML 轉換為 XLSX 嗎?
SDK 設計為執行緒安全,因此您可以同時啟動多個轉換任務,這對於在 Java 場景中高容量的 HTML 到 XLSX 轉換伺服器非常有用。
我可以在哪裡找到有關 GroupDocs.Conversion Cloud SDK for Java 授權的更多詳細資訊?
訪問臨時授權頁面以獲取試用金鑰,並查看定價頁面以了解完整授權選項。兩個鏈接均在產品主頁上提供。
