java pdf查看_Java检查PDF文件是否损坏
如果在系统中有比较多的PDF文件,但是的pdf文件可能被损坏了,我们可以利用itext 用来检测
首先下载itext包
http://sourceforge.net/projects/itext/files/
然后在执行以下代码
import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
import java.util.ArrayList;
import com.itextpdf.text.Document;
import com.itextpdf.text.pdf.PdfReader;
public class TestPdf {
private static ArrayList pdffiles = new ArrayList();
/**
* 递归得到特定目录下的所有文件
*/
public static void getAllPdfFile(String basedir) {
File dir = new File(basedir);
File[] files = dir.listFiles(new PdfFileFilter());
if (files == null)
return;
for (int i = 0; i < files.length; i++) {
if (files[i].isDirectory()) {
getAllPdfFile(files[i].getAbsolutePath());
} else {
pdffiles.add(files[i].getAbsolutePath());
}
}
}
/**
* 循环检测
*/
private static void CheckPdfFiles(ArrayList files) {
for (String file : files) {
boolean flag = false;
flag = check(file);
if (!flag) {
System.out.println(file + "文件损坏");
}
}
}
/**
* 利用itext打开pdf文档
*/
private static boolean check(String file) {
boolean flag1 = false;
int n = 0;
try {
Document document = new Document(new PdfReader(file).getPageSize(1));
document.open();
PdfReader reader = new PdfReader(file);
n = reader.getNumberOfPages();
if (n != 0)
flag1 = true;
document.close();
} catch (IOException e) {
System.out.println(e.getMessage());
}
return flag1;
}
public static void main(String[] args) {
getAllPdfFile("C:\\CO_uat\\");
if (pdffiles.size() > 0)
CheckPdfFiles(pdffiles);
System.out.println("No break down file");
}
}
/*
* pdf文件过滤器
*/
class PdfFileFilter implements FileFilter {
public boolean accept(File file) {
if (file.isFile()) {
String filename = file.getName().toLowerCase();
if (filename.endsWith(".pdf") == true) {
return true;
} else {
return false;
}
} else {
return true;
}
}
}
posted on 2010-09-01 18:20 fly 阅读(3952) 评论(3) 编辑 收藏 所属分类: java学习
java pdf查看_Java检查PDF文件是否损坏相关推荐
- 在线PDF查看器和PDF编辑器:GrapeCity Documents PDF (GcPdf)
跨平台 JavaScript PDF 查看器 使用我们的 JavaScript PDF 查看器在网络上阅读和编辑 PDF.跨浏览器和框架打开和打印.GrapeCity Documents PDF (G ...
- java pdf 水印_Java 在PDF中添加水印——文本/图片水印
水印是一种十分常用的防伪手段,常用于各种文档.资料等.常见的水印,包括文字类型的水印.图片或logo类型的水印.以下java示例,将分别使用inserttextwatermark(pdfpagebas ...
- java pdf打印_Java 打印PDF文档
本文将介绍如何在Java应用程序中打印PDF文档.一般有以下三种常见打印方式:静默打印 显示打印对话框打印 打印PDF时自定义纸张大小 使用工具:Free Spire.PDF for Java 创建运 ...
- java 去掉pdf文字_Java 删除PDF中的附件
在PDF中添加附件,可分两种情况,一种是直接把文档作为附件插入到PDF,一种是注释附件,即将文档通过注释的形式插入到PDF页面中的指定位置,通过点击注释,即可打开注释中的附件文档.同样的,在我们删除P ...
- java读取pdf签名_Java 获取PDF中的数字签名信息
一.概述及程序环境要求 本文以Java代码演示如何获取PDF文档中的数字签名信息,包括签名人.签名位置.日期.原因.联系方式.签名在文档中的坐标等等. 程序环境包括: Spire.Pdf.jar(ja ...
- java pdf 水印_Java在PDF中添加水印(文本/图片水印)
水印是一种十分常用的防伪手段,常用于各种文档.资料等.常见的水印,包括文字类型的水印.图片或logo类型的水印.以下Java示例,将分别使用insertTextWatermark(PdfPageBas ...
- java pdf 水印_Java在PDF中添加水印(文本/图片水印)效果
水印是一种十分常用的防伪手段,常用于各种文档.资料等.常见的水印,包括文字类型的水印.图片或logo类型的水印.以下Java示例,将分别使用insertTextWatermark(PdfPageBas ...
- HTML PDF 查看器--RAD PDF 3.33 FOR ASP.NET
RAD PDF 的主要特点 基于 HTML 的 PDF 阅读器 客户端 PDF 编辑器 功能丰富的 PDF 表单填写器 交互式 PDF 表单设计器 保护 PDF 内容 签署和认证 PDF 文件 广泛的 ...
- java heap 查看_JAVA HEAP查看简单办法
JAVA HEAP查看简单办法 最近在看JVM有关东西,发现一个简单和free的HEAP DUMP查看方式(基于SUN JDK) 先使用 jmap -dump:live,format=b,file=h ...
- java pdf 文字_Java给pdf文件添加文字等信息
2019独角兽企业重金招聘Python工程师标准>>> maven依赖 4.0.0 com.ttxit artifact 1.0.0 war javax.servlet javax. ...
最新文章
- Linux基础系列:常用命令(5)_samba服务与nginx服务
- C++ STL deque创建
- Java基础入门笔记-构造方法的继承
- 模式实例之——中介者实例
- phpstorm设置背景图片
- jeb 高级教程之动态调试
- 优科Ruckus R610 AP刷Unleashed固件
- 南京公积金贷款一些规定要点。
- cs架构自动化测试工具选型
- mysql报1205错误
- android高德地图截屏,高德地图-地图截屏
- Excel如何将某个特定值变为空值
- 中国移动、天猫都在用的区块链抽奖,了解一下?
- 佐治亚州立大学计算机科学,佐治亚州立大学计算机科学研究生语言及申请要求-费用-课程设置...
- 数据备份一般有哪些方式,如何进行数据备份
- lanczos bidiagonalization(1)
- Traffic Control
- 【单片机】Proteus安装、MDK5安装、Proteus与Keil联合仿真教程
- office2016 下载直通车
- 认识图片放大工具PhotoZoom的菜单栏