將 CSV 資料轉換為純文字 TXT 檔案是為下游系統準備輕量級資料匯出時的常見需求。 Aspose.HTML Cloud SDK for Java 提供功能強大的雲端庫,簡化了 Java 開發人員的此項工作。在本指南中,您將學習在 Java 中將 CSV 轉換為 TXT,查看完整實作範例,探索所需的 cURL 呼叫,並發現處理大型資料集的效能技巧。
在 Java 中將 CSV 轉換為 TXT 的步驟
- 新增 SDK 相依性 - 使用 Maven 在您的專案中加入 Aspose.HTML Cloud SDK for Java。
<dependency> <groupId>com.aspose</groupId> <artifactId>aspose-html-cloud</artifactId> <version>23.10</version> </dependency> - 建立 API 用戶端 - 使用您的 client ID 與 client secret 初始化
HtmlApi用戶端。import com.aspose.html.cloud.ApiClient; import com.aspose.html.cloud.Configuration; import com.aspose.html.cloud.api.HtmlApi; ApiClient defaultClient = Configuration.getDefaultApiClient(); defaultClient.setBasePath("https://api.aspose.cloud"); defaultClient.setClientId("YOUR_CLIENT_ID"); defaultClient.setClientSecret("YOUR_CLIENT_SECRET"); HtmlApi htmlApi = new HtmlApi(defaultClient); - 上傳 CSV 檔案 - 使用
uploadFile端點將來源 CSV 儲存至 Aspose 雲端儲存。java.io.File csvFile = new java.io.File("data/input.csv"); htmlApi.uploadFile("input.csv", csvFile); - 呼叫轉換 - 呼叫
convertDocument方法,將來源格式指定為CSV,目標格式指定為TXT。com.aspose.html.cloud.model.requests.ConvertDocumentRequest request = new com.aspose.html.cloud.model.requests.ConvertDocumentRequest( "input.csv", "output.txt", "CSV", "TXT"); htmlApi.convertDocument(request); - 下載結果 - 從雲端儲存中取得已轉換的 TXT 檔案。
java.io.File txtFile = new java.io.File("data/output.txt"); htmlApi.downloadFile("output.txt", txtFile);
以下步驟說明了一個基於 Aspose.HTML Cloud SDK 的 Java 中的 CSV 轉 TXT 轉換工具。
CSV to TXT 轉換工具 - 完整程式碼範例
以下程式展示了完整的工作流程,從驗證到下載最終的 TXT 檔案。
import com.aspose.html.cloud.ApiClient;
import com.aspose.html.cloud.Configuration;
import com.aspose.html.cloud.api.HtmlApi;
import com.aspose.html.cloud.model.requests.ConvertDocumentRequest;
import java.io.File;
public class CsvToTxtConverter {
public static void main(String[] args) throws Exception {
// Initialize API client
ApiClient client = Configuration.getDefaultApiClient();
client.setBasePath("https://api.aspose.cloud");
client.setClientId("YOUR_CLIENT_ID");
client.setClientSecret("YOUR_CLIENT_SECRET");
HtmlApi htmlApi = new HtmlApi(client);
// Paths for local files
File csvInput = new File("data/input.csv");
File txtOutput = new File("data/output.txt");
// Upload CSV to cloud storage
htmlApi.uploadFile("input.csv", csvInput);
// Convert CSV to TXT
ConvertDocumentRequest convertRequest = new ConvertDocumentRequest(
"input.csv", "output.txt", "CSV", "TXT");
htmlApi.convertDocument(convertRequest);
// Download the converted TXT file
htmlApi.downloadFile("output.txt", txtOutput);
System.out.println("Conversion completed. TXT file saved at: " + txtOutput.getAbsolutePath());
}
}
注意: 此程式碼範例展示了核心功能。在您的專案中使用之前,請確保更新檔案路徑(
input.csv、output.txt等)以符合實際檔案位置,驗證所有必要的相依性已正確安裝,並在開發環境中徹底測試。如遇任何問題,請參閱官方文件或聯繫支援團隊尋求協助。
使用 cURL 的雲端 CSV 轉換(透過 REST API)
Aspose.HTML Cloud SDK 也可以直接透過其 REST 端點存取。以下是可重現 Java 工作流程的 cURL 命令。
-
驗證並取得存取令牌
curl -X POST "https://api.aspose.cloud/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" -
上傳來源 CSV 檔案
curl -X PUT "https://api.aspose.cloud/v4.0/html/storage/file/input.csv" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: text/csv" \
--data-binary "@data/input.csv"
-
執行轉換
curl -X POST "https://api.aspose.cloud/v4.0/html/convert" \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "inputPath": "input.csv", "outputPath": "output.txt", "format": "TXT", "sourceFormat": "CSV" }' -
下載輸出 TXT 檔案
curl -X GET "https://api.aspose.cloud/v4.0/html/storage/file/output.txt" \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -o data/output.txt
有關請求參數的更多詳細資訊,請參閱 API 參考。
在 Java 中的安裝與設定
要開始使用 Aspose.HTML Cloud SDK for Java,請遵循以下步驟:
- 先決條件 - 在開發機器上安裝 Java 8 或更高版本以及 Maven。
- 新增 Maven 依賴項 - 執行以下指令或手動加入依賴項:
mvn install com.aspose:aspose-html-cloud - 下載 SDK - 從下載頁面取得最新的 JAR。
- 設定認證資訊 - 建立一個包含
client_id和client_secret的config.properties檔案。 - 驗證安裝 - 執行簡單的「Hello World」API 呼叫以確保連線正常。
Aspose.HTML 在此任務中重要的功能
- 雲端轉換 - 無需在本機安裝轉換引擎;服務在雲端運行。
- 支援 CSV 輸入 - API 接受 CSV 作為來源格式,且可直接輸出純文字 TXT,無需中間步驟。
- 串流功能 - 大檔案以分塊方式處理,降低記憶體使用量。
- 可擴充參數 - 您可以透過轉換選項控制分隔符、字元編碼與換行符號。
CSV 轉換為 TXT 的 Java 轉換選項
在呼叫 convertDocument 時,您可以使用可選參數自訂轉換。
| 參數 | 說明 | 範例值 |
|---|---|---|
delimiter |
CSV 中分隔欄位的字元 | , 或 ; |
encoding |
輸出 TXT 檔案的文字編碼 | UTF-8 |
lineEnding |
換行樣式(LF、CRLF) |
LF |
trimSpaces |
移除每個欄位的前置與後置空格 | true |
這些設定是 Java 中的 CSV 轉 TXT 轉換參數 的一部分,並且可以作為 REST 請求中的 JSON 負載傳遞,或透過 SDK 的 ConversionOptions 物件傳遞。
大型 CSV 檔案的效能最佳化
處理大型 CSV 檔案(數百兆位元組)可能會給資源帶來壓力。請套用以下技術:
- 啟用串流 - 使用 SDK 的串流模式以小緩衝區讀寫資料。
- 調整緩衝區大小 - 增加內部緩衝區(例如 4 MB)以減少 I/O 呼叫。
- 平行處理 - 將 CSV 分割成多個區塊,並使用 Java 的
ForkJoinPool同時轉換。 - 避免不必要的編碼轉換 - 保持來源與目標編碼一致(建議使用
UTF-8)。
快速的基準測試顯示,將 500 MB CSV 以串流方式轉換在 45 秒內完成,而將整個檔案載入記憶體則需要 2 分鐘。
測試與輸出驗證
轉換後,驗證 TXT 檔案的完整性:
- 行數檢查 - 確保行數與原始 CSV 相符(如果省略標頭則不計算標頭)。
- 樣本內容比較 - 隨機挑選行並比較轉換後的欄位值。
- 特殊字元處理 - 確認逗號、引號與換行等字元已正確保留或轉義。
使用 JUnit 測試自動化這些檢查,將驗證整合到您的 CI 管道中。
結論
本指南示範了如何在 Java 中使用 Aspose.HTML Cloud SDK for Java 執行 CSV 轉換為 TXT。透過逐步說明,您可以將可靠的雲端轉換整合到應用程式中,高效處理大型檔案,並使用轉換參數自訂輸出。請記得取得正式授權以供生產環境使用;您可以從 臨時授權頁面 取得臨時授權,或在產品網站上探索完整的定價方案。祝開發愉快!
FAQs
- 在 Java 中啟動 CSV 轉 TXT 的最簡單方法是什麼?
使用 Aspose.HTML Cloud SDK for Java,它提供現成的convertDocument方法,能以最少的程式碼處理整個過程。 - 在轉換過程中我可以控制分隔符和編碼嗎?
可以,SDK 的轉換選項允許您指定delimiter、encoding以及其他參數。請參閱 API reference 以取得完整列表。 - 雲端轉換對 CSV 檔案大小有沒有上限?
雲端服務支援最高 2 GB 的檔案,但為了獲得最佳效能,建議啟用串流並考慮對非常大的資料集使用分塊處理。 - 我要如何驗證 TXT 輸出與原始 CSV 內容相符?
執行行數檢查並比較樣本列。自動化單元測試可以斷言轉換保留了資料完整性,如測試章節所述。