Java 檔案未找到 – 在 Java 中建立輸出資料夾

當 Java 應用程式拋出 java file not found 例外時,最常見的原因是嘗試將檔案寫入不存在的目錄。在遮蔽工作流程中,這通常發生在未先確保目標資料夾存在就儲存已清理文件的情況。此教學將帶領您以程式方式建立輸出資料夾、結合 GroupDocs.Redaction,以及有效處理大型文件。完成後,您將擁有可重複使用的模式,消除令人頭痛的 java file not found 錯誤,且不會改動原始檔案。

快速解答

  • 第一步是什麼? 在 Java 中建立輸出資料夾並加入 GroupDocs.Redaction 程式庫。
  • 需要哪個程式庫版本? GroupDocs.Redaction 24.9 或更新版本。
  • 我需要授權嗎? 免費試用可用於測試;正式環境需要付費授權。
  • 我可以保留原始文件格式嗎? 可以——儲存時停用光柵化。
  • 這適用於大型檔案嗎? 只要適當調整記憶體即可。

什麼是「在 Java 中建立輸出資料夾」?

在 Java 中建立輸出資料夾指的是檢查目錄是否存在,若不存在則建立它,以便處理後的檔案有專屬的儲存位置。此步驟可將已遮蔽的文件與原始文件分離,並讓專案保持有序。

為什麼要在 Java 中使用 GroupDocs.Redaction 建立輸出資料夾?

您可以先建立資料夾、載入來源檔案、套用遮蔽,然後儲存結果,從而避免出現 java file not found 例外。GroupDocs.Redaction 支援 50+ 輸入與輸出格式——包括 DOCX、PDF、PPTX、XLSX 以及常見影像類型,且能在不將整個文件載入記憶體的情況下處理數百頁的檔案。透過分離來源與目的路徑,您亦可提升稽核性與批次處理的便利性。

先決條件

  • GroupDocs.Redaction 程式庫 – 版本 24.9 或更新。
  • Java Development Kit (JDK) – 版本 8 或以上。
  • IDE,例如 IntelliJ IDEA 或 Eclipse。
  • 已安裝 Maven 用於相依性管理。
  • 具備 Java 檔案 I/O 的基本知識。

設定 GroupDocs.Redaction(Java 版)

將 GroupDocs 倉庫與 Redaction 相依性加入您的 pom.xml:

<repositories>
   <repository>
      <id>repository.groupdocs.com</id>
      <name>GroupDocs Repository</name>
      <url>https://releases.groupdocs.com/redaction/java/</url>
   </repository>
</repositories>

<dependencies>
   <dependency>
      <groupId>com.groupdocs</groupId>
      <artifactId>groupdocs-redaction</artifactId>
      <version>24.9</version>
   </dependency>
</dependencies>

如果您偏好手動下載,請從官方發行頁面取得最新 JAR: GroupDocs.Redaction for Java releases。

授權取得步驟

先使用免費試用探索 API。當您準備好投入正式環境時,請從 GroupDocs 入口網站取得臨時或正式授權。

實作指南

如何在 Java 中建立輸出資料夾

在任何遮蔽操作之前,您需要一個可靠的資料夾建立例程。以下程式碼會檢查資料夾是否存在,若必要則建立,並組合出遮蔽檔案的完整路徑。這確保後續的遮蔽步驟始終擁有有效的目的地,防止 FileNotFoundException,即使在批次處理多個文件時也能順利執行。

import java.io.File;

public class DocumentDirectorySetup {
    public static void main(String[] args) throws Exception {
        // Define the path to your document directory and create it if it doesn't exist
        File outputFolder = new File("YOUR_DOCUMENT_DIRECTORY/HelloWorld");
        if (!outputFolder.exists()) {
            outputFolder.mkdirs();
        }
        File outputFile = new File(outputFolder, "redacted_document.docx");
    }
}
  • 為什麼這很重要: 透過程式化建立資料夾,您保證遮蔽步驟始終有有效的目的地,避免 FileNotFoundException 錯誤。

如何使用 GroupDocs.Redaction 進行遮蔽

Redactor 是執行文件遮蔽的主要類別。它會載入文件、搜尋敏感內容,並在提供模式搜尋、文字取代與光柵化控制等選項的同時寫入已清理的版本。使用 Redactor,您可以載入 sample_document.docx,將字串 “John Doe” 替換為紅色覆蓋層,並將結果儲存至先前建立的資料夾,且不會光柵化輸出,從而保留原始版面配置。

import com.groupdocs.redaction.Redactor;
import java.io.FileOutputStream;

public class RedactionApplication {
    public static void main(String[] args) throws Exception {
        // Initialize the redactor with a sample document path
        final Redactor redactor = new Redactor("YOUR_DOCUMENT_DIRECTORY/sample_document.docx");
        
        try {
            // Apply an exact phrase redaction to replace "John Doe" with a red color
            RedactorChangeLog result = redactor.apply(new ExactPhraseRedaction(
                "John Doe", 
                new ReplacementOptions(java.awt.Color.RED)
            ));
            
            // Save the document to the specified output file path
            final FileOutputStream stream = new FileOutputStream("YOUR_OUTPUT_DIRECTORY/redacted_document.docx");
            try {
                // Disable rasterization options for saving in original format
                RasterizationOptions rasterOptions = new RasterizationOptions();
                rasterOptions.setEnabled(false);
                redactor.save(stream, rasterOptions);
            } finally {
                stream.close();
            }
        } finally {
            redactor.close();
        }
    }
}
  • 說明: Redactor 載入 sample_document.docx,搜尋精確字串 “John Doe”,以紅色覆蓋層取代,並將結果寫入我們先前建立的資料夾。停用光柵化可保留原始 DOCX 版面。

如何在建立輸出資料夾時修復 java file not found 錯誤

如果在加入資料夾建立程式碼後仍看到 java file not found 例外,請檢查以下項目。首先,使用絕對路徑(例如 C:/data/HelloWorld)以排除工作目錄的混淆。其次,確認 Java 程序對目標目錄具有寫入權限。第三,於 Windows 環境下使用 File.separator 或正斜線,以避免跳脫字元問題。採取這些防護措施即可確保遮蔽步驟不會因目的資料夾缺失而失敗。

  1. 絕對路徑 vs. 相對路徑: 使用絕對路徑 (C:/data/HelloWorld) 以排除工作目錄混淆。
  2. 檔案權限: 確認 Java 程序對目標目錄具有寫入權限。
  3. 路徑分隔符: 在 Windows 上,建議使用 File.separator 或正斜線以避免跳脫字元問題。

實務應用

在以下實際情境中,您會 在 Java 中建立輸出資料夾 並使用 GroupDocs.Redaction:

  1. 合規管理: 在提交合約前自動清除個人資料。
  2. 財務報告: 在與外部稽核師共享的季報中隱藏帳號。
  3. 醫療紀錄: 從醫療文件中移除患者識別資訊,以符合 HIPAA 規範。

效能考量

  • 記憶體管理: 對於極大 DOCX 或 PDF 檔案,使用串流 API 以避免將整個文件載入記憶體。
  • 批次處理: 迴圈處理檔案清單,盡可能重複使用單一 Redactor 實例。
  • JVM 調校: 若常處理超過 50 MB 的文件,請增加堆積大小(-Xmx2g)。

結論

您現在已掌握 在 Java 中建立輸出資料夾、整合 GroupDocs.Redaction,並在保留原始格式的同時執行精準遮蔽。此工作流程協助您符合合規標準、保護敏感資料,並根除會中斷自動化管線的 java file not found 錯誤。

如需更深入的探索,請參閱官方文件: GroupDocs documentation。

常見問題

Q: 如何開始使用 GroupDocs.Redaction?
A: 如上方所示加入 Maven 相依性,建立輸出資料夾,然後依範例實例化 Redactor。

Q: GroupDocs.Redaction 能有效處理大型文件嗎?
A: 能——透過串流 API 並停用光柵化,即可在不大量佔用記憶體的情況下處理數百頁的檔案。

Q: 正式環境需要授權嗎?
A: 評估階段使用免費試用即可,但商業部署必須取得付費授權。

Q: 支援哪些檔案格式?
A: GroupDocs.Redaction 支援 DOCX、PDF、PPTX、XLSX 以及多種影像格式,總計超過 50 種。

Q: 如何自動化多檔案的遮蔽?
A: 將遮蔽邏輯包在迴圈中,遍歷資料夾內的檔案,對每個文件使用相同的輸出資料夾模式。


最後更新: 2026-08-04
測試環境: GroupDocs.Redaction 24.9
作者: GroupDocs


相關教學