doc、docx、txt、xls、xlsx、ppt、pptx等文档转为PDF格式,读取PDF文档页数

通过接口http://10.10.10.38:8080/dianshang/appshouji/pageCount可以将doc、docx、txt、xls、xlsx、ppt、pptx等文件转换为PDF格式,并能读取转换后的PDF文档页数。使用工具类Word2PDF.java实现转换功能。
摘要由CSDN通过智能技术生成
@RequestMapping(value = "/pageCount", produces = "application/json;charset=UTF-8")
	@ResponseBody
	public Object pageCount() throws Exception {
		logBefore(logger, "文件页数");
		Map<String, Object> map = new HashMap<String, Object>();
		//上传文件,并得出页数,前台计算价格并返回
		PageData pd = this.getPageData();
		String wenjian = pd.getString("FILE");//获取文件
		if(null != wenjian && !"".equals(wenjian)){
			int i = wenjian.lastIndexOf(".");//获取文件前缀名
			String zpdf = wenjian.substring(0, i)+".pdf"; //拼接要转的pdf文件
			int time = Word2PDF.convert2PDF(PathUtil.getClasspath()+wenjian, PathUtil.getClasspath()+zpdf);//判断需要转化文件的类型(Excel、Word、ppt)
	        if (time == -4) {
	            System.out.println("转化失败,未知错误...");
				map.put("data", wenjian);
				map.put("code", 300);
				map.put("msg", "文件错误或无文件");
	        } else if(time == -3) {//原文件就是PDF文件,无需转化...
	            int count = Word2PDF.getPdfPage(PathUtil.getClasspath()+zpdf);//无需转换pdf,直接获取页数
	        	map.put("code", 200);
				map.put("msg", "此文件页数为:" +count);
				map.put("count", count);
				map.put("data", wenjian);
	        } else if (time == -2) {
	            System.out.println("转化失败,文件不存在...");
				map.put("data", wenjian);
				map.put("code", 300);
				map.put("msg", "文件错误或无文件");
	        }else if(time == -1){
	            System.out.println("转化失败,请重新尝试...");
				map.put("data", wenjian);
				map.put("code", 300);
				map.put("msg", "文件错误或无文件");
	        }else if (time < -4) {
	            System.out.println("转化失败,请重新尝试...");
				map.put("data", wenjian);
				map.put("code", 300);
				map.put("msg", "文件错误或无文件");
	        }else {//转化成功,用时:  " + time + "s...
	            int count = Word2PDF.getPdfPage(PathUtil.getClasspath()+zpdf);
	        	map.put("code", 200);
				map.put("msg", "此文件页数为:" +count);
				map.put("count", count);
				map.put("data", zpdf);
	        }
		}else{
			map.put("data"
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值