| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- package com.ruoyi.common.utils;
-
- import org.apache.poi.hwpf.extractor.WordExtractor;
- import org.apache.poi.xwpf.extractor.XWPFWordExtractor;
- import org.apache.poi.xwpf.usermodel.XWPFDocument;
-
- import java.io.*;
-
- /**
- * @author wangqiong
- * @description 读取文件内容
- * @date 2023-12-11 11:45
- */
- public class ReadFileUtils {
-
-
- public static String readerTxtFile(String filePath){
- BufferedReader br=null;
- StringBuilder result=new StringBuilder();
- try {
- br = new BufferedReader(new InputStreamReader(new FileInputStream(new File(filePath)),"GBK"));
- String line=null;
- while ((line=br.readLine())!=null) {
- result.append(line).append("\n");
- }
- } catch (IOException e) {
- e.printStackTrace();
- } finally {
- if (null!=br){
- try {
- br.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
- return result.toString();
- }
- public static String readWord(String filePath) throws Exception{
-
- File file = new File(filePath);
- if(file.length()==0) return ""; // 需要操作原因是可能会空文件问题,如果不做处理,在下面读取中会报错
- StringBuffer sb = new StringBuffer();
- String buffer = "";
- try {
- if (filePath.endsWith(".doc")) {
- InputStream is = new FileInputStream(file);
- WordExtractor ex = new WordExtractor(is);
- buffer = ex.getText();
- if(buffer.length() > 0){
- //使用回车换行符分割字符串
- String [] arry = buffer.split("r\\n");
- for (String string : arry) {
- sb.append(string.trim());
- }
- }
- } else if (filePath.endsWith(".docx")) {
- FileInputStream fis = new FileInputStream(file);
- XWPFDocument xdoc = new XWPFDocument(fis);
- XWPFWordExtractor extractor = new XWPFWordExtractor(xdoc);
- buffer = extractor.getText();
- sb.append(buffer!=null?buffer:"");
-
-
- // OPCPackage opcPackage = POIXMLDocument.openPackage(filePath);
- // XWPFWordExtractor extractor = new XWPFWordExtractor(opcPackage);
- // buffer = extractor.getText();
- // if(buffer.length() > 0){
- // //使用换行符分割字符串
- // String [] arry = buffer.split("\n");
- // for (String string : arry) {
- // sb.append(string.trim());
- // }
- // }
- } else {
- return null;
- }
- return sb.toString();
- } catch (Exception e) {
- System.out.print("error---->"+filePath);
- e.printStackTrace();
- return null;
- }
- }
-
- }
|