Java课程设计-文档相似性检查系统-文档输出字符串类
2014-07-15 21:23
381 查看
如果比较文档相似性,首先会把txt、doc、pdf 格式的文档输出到缓冲区。文档输出字符串类
根据课题 文档相似性检测系统(作业查重)
实现txt输出比较容易、doc的话就要用到poi控件、方法很多还能用到itext、pdf格式用到pdfbox/* * 判断要比较的文章后缀格式。doc、txt、pdf格式均可 * 返回字符串 */ import java.io.*; import org.pdfbox.pdmodel.PDDocument; import org.textmining.text.extraction.WordExtractor; import org.pdfbox.pdfparser.PDFParser; import org.pdfbox.util.PDFTextStripper; public class wordortxt { public static String readDoc(String docFilePath) throws Exception { //doc格式输出 // 创建输入流读取doc文件 File f1 = new File(docFilePath); FileInputStream in = new FileInputStream(f1); WordExtractor extractor = null; String text = null; // 创建WordExtractor extractor = new WordExtractor(); // 对doc文件进行提取 text = extractor.extractText(in); return text; } public static String readtxt(String txtFilePath) throws Exception { //txt格式输出 File f = new File(txtFilePath); FileInputStream inputstream = new FileInputStream(f); StringBuffer buffer = new StringBuffer(); String line; // 用来保存每行读取的内容 InputStreamReader in=new InputStreamReader(inputstream); BufferedReader bufferreader = new BufferedReader(in); line = bufferreader.readLine(); // 读取第一行 while (line != null) { // 如果 line 为空说明读完了 buffer.append(line); // 将读到的内容添加到 buffer 中 buffer.append("\n"); // 添加换行符 line = bufferreader.readLine(); // 读取下一行 } // 将读到 buffer 中的内容写出来 inputstream.close(); String filetext = buffer.toString(); //inputstream.getEncoding() //filetext就是得到的字符串 return filetext; //System.out.print(filetext); //System.out.print(in.getEncoding());*/ } public static String readPDF (String PDFFilePath) { //PDF格式输出 String resultPDF = null; FileInputStream is = null; PDDocument document = null; try{ is = new FileInputStream(PDFFilePath); PDFParser p = new PDFParser(is); //对PDF文件进行解析 p.parse(); //获取解析后得到的PDF文档对象 document = p.getPDDocument(); //新建一个PDF文本剥离器 PDFTextStripper stripper = new PDFTextStripper(); //从PDF文档对象中剥离文本 resultPDF = stripper.getText(document); } catch (FileNotFoundException e){ e.printStackTrace(); } catch (IOException e ){ e.printStackTrace(); } finally { if (is != null){ try { is.close(); }catch (IOException e){ e.printStackTrace(); } } if (document != null){ try { document.close(); }catch (IOException e){ e.printStackTrace(); } } } return resultPDF; } }
相关文章推荐
- Java课程设计-文档相似性检查系统-字符串中文分词类
- Java课程设计-文档相似性检查系统(完整)测试版
- Java基础——IO(拷贝文件+字节流-字符流缓冲区(装饰设计)-转换流-IO操作规律-异常日志-系统信息列表输出)
- Java课程设计笔记-Android系统创建阻塞式对话框
- Java课程设计——Pizza销售系统功能需求
- Java课程设计—学生成绩管理系统(201521123005 杨雪莹)
- JAVA课程设计---学生基本信息管理系统(201521123039 王兴)
- Java课程设计——博客作业教学数据分析系统(201521123084 林正晟)
- Java课程设计——ATM系统[功能性需求]
- Java课程设计——博客作业教学数据分析系统(201521123082 黄华林)
- Java课程设计——学生成绩管理系统(201521123003 董美凤)
- 初学java 课程设计ATM机 简易系统(卡片布局)
- 考试系统(简单版)-----大二上java课程设计
- Java课程设计笔记-Android系统获取所有存储器路径
- Java课程设计—学生成绩管理系统(201521123002 林楚虹)
- Java+FlexPaper+swfTools仿百度文库文档在线预览系统设计与实现
- Java课程设计-学籍信息管理系统
- JAVA课程设计-学生信息管理系统(个人博客)
- Java课程设计—学生成绩管理系统(54号童欢)