import com.itextpdf.text.pdf.PdfReader;
import java.io.File;
public class Main {
public static void main(String[] args) {
//有没有可以快速统计N多个pdf文件页数的软件
//addPageCount("C:\\Users\\Administrator\\Desktop\\新建文件夹 (2)\\202103011510 Size54x90mm @E 350g进口牛皮纸 26500《805扁1_54x90》.pdf");
//监控 新建文件夹(2) 如有pdf文件进来就自动 增加页码在文件名上面
auto("C:\\Users\\Administrator\\Desktop\\新建文件夹 (2)");
}
//把页码添加在文件名上面
public static void addPageCount(String inPath){
try{
PdfReader reader = new PdfReader(inPath);
int numberOfPages = reader.getNumberOfPages();
reader.close();
String parentPath = new File(inPath).getParent();
String finshPath = parentPath+"\\完成";
if(!new File(finshPath).exists()){
new File(finshPath).mkdirs();
}
String name = new File(inPath).getName();
name = name.replaceAll(".pdf","_"+numberOfPages+".pdf");
new File(inPath).renameTo(new File(finshPath+"\\"+name));
}catch (Exception e){
e.printStackTrace();
}
}
//自动监控文件夹 使其自动添加页码
public static void auto(final String path){
Runnable r = new Runnable(){
int k=0;
public void run(){
while (true){
System.out.println(k++);
try {
File[] files = new File(path).listFiles();
if(files!=null&&files.length>0){
for(File file:files){
if(file.getName().toLowerCase().indexOf(".pdf")!=-1){
addPageCount(file.toString());
}
}
}
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
};
new Thread(r).start();
}
}