私はプログラミングが新しく、自分の個人プロジェクトにはPDFBoxを使用しようとしています。私は基本的にPDFに特定のキーワードがあるかどうかを確認しようとしています。はいの場合は、ファイルを「承認済み」フォルダに転送します。PDFボックス - ファイルの名前を変更できない、またはファイルを削除できない
は、私は以下のコードが書かれて悪いけど、私は正しくファイルを転送したり、削除することはできませんよ。
try (Stream<Path> filePathStream = Files.walk(Paths.get("C://pdfbox_teste"))) {
filePathStream.forEach(filePath -> {
if (Files.isRegularFile(filePath)) {
String arquivo = filePath.toString();
File file = new File(arquivo);
try {
// Loading an existing document
PDDocument document = PDDocument.load(file);
// Instantiate PDFTextStripper class
PDFTextStripper pdfStripper = new PDFTextStripper();
String text = pdfStripper.getText(document);
String[] words = text.split("\\.|,|\\s");
for (String word : words) {
// System.out.println(word);
if (word.equals("Revisão") || word.equals("Desenvolvimento")) {
// System.out.println(word);
if(file.renameTo(new File("C://pdfbox_teste//Aprovados//" + file.getName()))){
document.close();
System.out.println("Arquivo transferido corretamente");
file.delete();
};
}
}
System.out.println("Fim do documento: " + arquivo);
System.out.println("----------------------------");
document.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
私は新しいフォルダに転送されたファイルを持っていると思いました。代わりに、ときどき削除されるだけで時々何も起こりません。私はおそらくforeach上にエラーがあると思いますが、私はそれを修正する方法を見つけることができないようです。