解析word PDF文件内容

本文将探讨如何利用Java编程语言来解析Word和PDF文档的内容,包括读取、提取文本信息等关键步骤,帮助开发者更好地理解和操作这两种常用文档格式。
摘要由CSDN通过智能技术生成
package com.jeesite.modules.common.utils;

import com.jeesite.modules.common.io.FileUtils;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.text.PDFTextStripper;
import org.apache.poi.hwpf.HWPFDocument;
import org.apache.poi.hwpf.extractor.WordExtractor;
import org.apache.poi.hwpf.model.PicturesTable;
import org.apache.poi.hwpf.usermodel.CharacterRun;
import org.apache.poi.hwpf.usermodel.Picture;
import org.apache.poi.hwpf.usermodel.Range;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFPictureData;

import org.springframework.web.multipart.MultipartFile;
import org.apache.poi.openxml4j.opc.OPCPackage;


import java.io.*;
import java.util.List;

public class ReadWordUtils {
//    public static String tmpPath="E://tmp_files/tmp.pdf";

    public static StringBuffer readWord(String fileType , MultipartFile file){

        StringBuffer content = new StringBuffer("");
        InputStream is = null;

        if (".doc".equals(fileType)) {
            try {
                is =file.getInputStream();
                WordExtractor extractor = new WordExtractor(is);

                String[] paragraphText = extractor.getParagraphText();   // 获取段落,段落缩进无法获取,可以在前添加空格填充
                if (paragraphText != null && paragraphText.length > 0) {
                    for (String paragraph : paragraphText) {
                        if (!paragraph.startsWith("    ")) {
                            content.append("    ").append(paragraph.trim()).append("\r\n");
                        } else {
                            content.append(paragraph);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("-----------解析异常-------------
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值