在Spring Boot中,可以使用Apache POI和PDFBox来读取用户上传的Word或PDF文件中的文字。具体步骤如下:
1. 添加依赖
在pom.xml文件中添加以下依赖:
```xml
org.apache.poi
poi
4.1.2
org.apache.poi
poi-ooxml
4.1.2
org.apache.pdfbox
pdfbox
2.0.24
```
2. 读取Word文件中的文字
```java
try (XWPFDocument doc = new XWPFDocument(new FileInputStream("path/to/word/file.docx"))) {
XWPFWordExtractor extractor = new XWPFWordExtractor(doc);
String text = extractor.getText();
System.out.println(text);
} catch (IOException e) {
e.printStackTrace();
}
```
在上面的代码中,我们使用`XWPFDocument`类和`XWPFWordExtractor`类来读取Word文件中的文字。
3. 读取PDF文件中的文字
```java
try (PDDocument doc = PDDocument.load(new File("path/to/pdf/file.pdf"))) {
PDFTextStripper stripper = new PDFTextStripper();
String text = stripper.getText(doc);
System.out.println(text);
} catch (IOException e) {
e.printStackTrace();
}
```
在上面的代码中,我们使用`PDDocument`类和`PDFTextStripper`类来读取PDF文件中的文字。
需要注意的是,以上代码只能读取文件中的纯文本内容,如果文件中包含图片、表格等复杂内容,则无法读取。另外,为了避免内存泄漏,需要在读取完文件后及时关闭相关的流对象。