CSV 資料轉換為純文字 TXT 檔案是為下游系統準備輕量級資料匯出時的常見需求。 Aspose.HTML Cloud SDK for Java 提供功能強大的雲端庫,簡化了 Java 開發人員的此項工作。在本指南中,您將學習在 Java 中將 CSV 轉換為 TXT,查看完整實作範例,探索所需的 cURL 呼叫,並發現處理大型資料集的效能技巧。

在 Java 中將 CSV 轉換為 TXT 的步驟

  1. 新增 SDK 相依性 - 使用 Maven 在您的專案中加入 Aspose.HTML Cloud SDK for Java。
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-html-cloud</artifactId>
        <version>23.10</version>
    </dependency>
    
  2. 建立 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);
    
  3. 上傳 CSV 檔案 - 使用 uploadFile 端點將來源 CSV 儲存至 Aspose 雲端儲存。
    java.io.File csvFile = new java.io.File("data/input.csv");
    htmlApi.uploadFile("input.csv", csvFile);
    
  4. 呼叫轉換 - 呼叫 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);
    
  5. 下載結果 - 從雲端儲存中取得已轉換的 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.csvoutput.txt 等)以符合實際檔案位置,驗證所有必要的相依性已正確安裝,並在開發環境中徹底測試。如遇任何問題,請參閱官方文件或聯繫支援團隊尋求協助。

使用 cURL 的雲端 CSV 轉換(透過 REST API)

Aspose.HTML Cloud SDK 也可以直接透過其 REST 端點存取。以下是可重現 Java 工作流程的 cURL 命令。

  1. 驗證並取得存取令牌

    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"
    
  2. 上傳來源 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"
  1. 執行轉換

    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"
             }'
    
  2. 下載輸出 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,請遵循以下步驟:

  1. 先決條件 - 在開發機器上安裝 Java 8 或更高版本以及 Maven。
  2. 新增 Maven 依賴項 - 執行以下指令或手動加入依賴項:
    mvn install com.aspose:aspose-html-cloud
    
  3. 下載 SDK - 從下載頁面取得最新的 JAR。
  4. 設定認證資訊 - 建立一個包含 client_idclient_secretconfig.properties 檔案。
  5. 驗證安裝 - 執行簡單的「Hello World」API 呼叫以確保連線正常。

Aspose.HTML 在此任務中重要的功能

  • 雲端轉換 - 無需在本機安裝轉換引擎;服務在雲端運行。
  • 支援 CSV 輸入 - API 接受 CSV 作為來源格式,且可直接輸出純文字 TXT,無需中間步驟。
  • 串流功能 - 大檔案以分塊方式處理,降低記憶體使用量。
  • 可擴充參數 - 您可以透過轉換選項控制分隔符、字元編碼與換行符號。

CSV 轉換為 TXT 的 Java 轉換選項

在呼叫 convertDocument 時,您可以使用可選參數自訂轉換。

參數 說明 範例值
delimiter CSV 中分隔欄位的字元 ,;
encoding 輸出 TXT 檔案的文字編碼 UTF-8
lineEnding 換行樣式(LFCRLF 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 檔案的完整性:

  1. 行數檢查 - 確保行數與原始 CSV 相符(如果省略標頭則不計算標頭)。
  2. 樣本內容比較 - 隨機挑選行並比較轉換後的欄位值。
  3. 特殊字元處理 - 確認逗號、引號與換行等字元已正確保留或轉義。

使用 JUnit 測試自動化這些檢查,將驗證整合到您的 CI 管道中。

結論

本指南示範了如何在 Java 中使用 Aspose.HTML Cloud SDK for Java 執行 CSV 轉換為 TXT。透過逐步說明,您可以將可靠的雲端轉換整合到應用程式中,高效處理大型檔案,並使用轉換參數自訂輸出。請記得取得正式授權以供生產環境使用;您可以從 臨時授權頁面 取得臨時授權,或在產品網站上探索完整的定價方案。祝開發愉快!

FAQs

  • 在 Java 中啟動 CSV 轉 TXT 的最簡單方法是什麼?
    使用 Aspose.HTML Cloud SDK for Java,它提供現成的 convertDocument 方法,能以最少的程式碼處理整個過程。
  • 在轉換過程中我可以控制分隔符和編碼嗎?
    可以,SDK 的轉換選項允許您指定 delimiterencoding 以及其他參數。請參閱 API reference 以取得完整列表。
  • 雲端轉換對 CSV 檔案大小有沒有上限?
    雲端服務支援最高 2 GB 的檔案,但為了獲得最佳效能,建議啟用串流並考慮對非常大的資料集使用分塊處理。
  • 我要如何驗證 TXT 輸出與原始 CSV 內容相符?
    執行行數檢查並比較樣本列。自動化單元測試可以斷言轉換保留了資料完整性,如測試章節所述。

閱讀更多