精华内容
下载资源
问答
  • 主要介绍了java使用poi读取doc和docx文件的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • Java读写txt或doc文件

    2021-03-22 17:57:29
    import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStr...

    import java.io.BufferedReader;

    import java.io.File;

    import java.io.FileInputStream;

    import java.io.FileNotFoundException;

    import java.io.FileOutputStream;

    import java.io.IOException;

    import java.io.InputStreamReader;

    import java.io.UnsupportedEncodingException;

    public class Main {

    public static void main(String[] args) {

    Main main = new Main();

    //main.writeFile("D:\\test\\f1.txt");

    //main.writeFile("D:\\test\\f2.doc");

    //main.readFile("D:\\test\\f1.txt");/读写txt doc文件都可以

    main.readFile("D:\\test\\f2.doc");

    }// main

    public void writeFile(String path) {

    try {

    FileOutputStream fos = new FileOutputStream(path);

    //System.out.println("2222".getBytes());

    fos.write("字符串写入文件".getBytes()); // //直接覆盖 内容是执行最后一次的内容

    fos.close();

    System.out.println("写入成功");

    } catch (FileNotFoundException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    } catch (IOException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    }

    public void readFile(String path) {

    File file = new File(path);

    if (file.exists() && file.isFile()) {

    try {

    BufferedReader buf = new BufferedReader(new InputStreamReader(new FileInputStream(path),"GBK"));

    UTF-8是乱码

    GBK中文

    String str = "";

    try {

    while ((str = buf.readLine()) != null) {

    System.out.println(str);

    }

    } catch (IOException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    } catch (FileNotFoundException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    } catch (UnsupportedEncodingException e1) {

    // TODO Auto-generated catch block

    e1.printStackTrace();

    }

    } else {

    System.out.println("文件不存在");

    }

    }// /readFile

    }

    可以自己新建文件试试,我就不上传图片了,

    展开全文
  • zip文件解压,直接导入到eclipse里 有两个类 分别支持读取word和pdf转word,pdf转word样式百分百保留,license证书已pj,如需商业用途请购买正版证书
  • java读取doc文档

    2013-06-26 09:41:44
    java读取doc文档的一些小例子,供大家参考。
  • java如何读取doc文件

    2021-02-12 17:41:33
    24 25 26 public final class HWPFDocFixture 27 { 28 public static final String DEFAULT_TEST_FILE = "test.doc"; 29 30 public byte[] _tableStream; 31 public byte[] _mainStream; 32 public ...

    使用poi:

    package org.apache.poi.hwpf;

    19

    20 import org.apache.poi.hwpf.model.FileInformationBlock;

    21 import org.apache.poi.poifs.filesystem.DocumentEntry;

    22 import org.apache.poi.poifs.filesystem.POIFSFileSystem;

    23 import org.apache.poi.POIDataSamples;

    24

    25

    26 public final class HWPFDocFixture

    27 {

    28 public static final String DEFAULT_TEST_FILE = "test.doc";

    29

    30 public byte[] _tableStream;

    31 public byte[] _mainStream;

    32 public FileInformationBlock _fib;

    33 private String _testFile;

    34

    35 public HWPFDocFixture(Object obj, String testFile)

    36 {

    37 _testFile = testFile;

    38 }

    39

    40 public void setUp()

    41 {

    42 try

    43 {

    44 POIFSFileSystem filesystem = new POIFSFileSystem(

    45 POIDataSamples.getDocumentInstance().openResourceAsStream(_testFile));

    46

    47 DocumentEntry documentProps =

    48 (DocumentEntry) filesystem.getRoot().getEntry("WordDocument");

    49 _mainStream = new byte[documentProps.getSize()];

    50 filesystem.createDocumentInputStream("WordDocument").read(_mainStream);

    51

    52 // use the fib to determine the name of the table stream.

    53 _fib = new FileInformationBlock(_mainStream);

    54

    55 String name = "0Table";

    56 if (_fib.getFibBase().isFWhichTblStm())

    57 {

    58 name = "1Table";

    59 }

    60

    61 // read in the table stream.

    62 DocumentEntry tableProps =

    63 (DocumentEntry) filesystem.getRoot().getEntry(name);

    64 _tableStream = new byte[tableProps.getSize()];

    65 filesystem.createDocumentInputStream(name).read(_tableStream);

    66

    67 _fib.fillVariableFields(_mainStream, _tableStream);

    68 }

    69 catch (Throwable t)

    70 {

    71 t.printStackTrace();

    72 }

    73 }

    74

    75 public void tearDown()

    76 {

    77 }

    78

    79 }

    2014年4月18日 15:59

    展开全文
  • 适用场景:java读取带图片或不带图片的doc文件1.带图片的doc文件格式2.运行代码生成的html格式文件:生成到目录的图片:双击打开csDoc.html:代码:package com.test;import java.io.File;import java.io....

    适用场景:java读取带图片或不带图片的doc文件

    1.带图片的doc文件格式

    7db1e2bb62418e7b1835aea06ec3fff8.png

    2.运行代码

    cc1659ed419bb72ac0c992f65e757258.png

    生成的html格式文件:

    9845de5c77e24cb44e5fbb3fc4b75453.png

    生成到目录的图片:

    ae3085c12dee2531f7525ee68168c3ed.png

    双击打开csDoc.html:

    190bb364c57cc63fa1777fc4f82f7a40.png

    代码:

    package com.test;

    import java.io.File;

    import java.io.FileInputStream;

    import java.io.FileNotFoundException;

    import java.io.FileOutputStream;

    import java.io.IOException;

    import java.io.InputStream;

    import java.io.OutputStream;

    import java.io.PrintWriter;

    import java.text.SimpleDateFormat;

    import java.util.Date;

    import java.util.Random;

    import org.apache.poi.hwpf.HWPFDocument;

    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.junit.Test;

    import org.junit.runner.RunWith;

    import org.springframework.boot.test.context.SpringBootTest;

    import org.springframework.test.context.junit4.SpringRunner;

    @RunWith(SpringRunner.class)

    @SpringBootTest

    public class TestDoc {

    @Test

    public void testReadImgDoc() {

    System.out.println(analyzeDoc());

    }

    private String analyzeDoc(){

    //对应桌面地址的doc格式文件

    String path="C:\\Users\\Administrator\\Desktop\\cs.doc";

    StringBuffer tempBuffer = new StringBuffer();

    InputStream in = null;

    try

    {

    in = new FileInputStream(path);

    HWPFDocument doc=new HWPFDocument(in);

    // 取得文档中字符的总数

    int length = doc.characterLength();

    // 创建图片容器

    PicturesTable pTable = doc.getPicturesTable();

    //存放图片路径

    String fileName = "D:\\\upload\\cs\\";

    for (int i = 0; i < length - 1; i++) {

    // 整篇文章的字符通过一个个字符的来判断,range为得到文档的范围

    Range range = new Range(i, i + 1, doc);

    CharacterRun cr = range.getCharacterRun(0);

    if (pTable.hasPicture(cr)) {

    String pic = readPicture(pTable, cr,i,fileName);

    // 读写图片

    tempBuffer.append("%22+pic+%22");

    }else {

    char c = cr.text().charAt(0);

    // 判断为回车符

    if (c == 13) {

    tempBuffer.append("
    ");

    }else {

    tempBuffer.append(cr.text());

    }

    }

    }

    }catch (FileNotFoundException e) {

    //异常按业务场景处理

    }catch (IOException e) {

    //异常按业务场景处理

    }

    finally {

    if(in != null) {

    try {

    in.close();

    } catch (IOException e) {

    e.printStackTrace();

    }

    }

    }

    String docxContent = tempBuffer.toString();

    PrintWriter pw = null;

    try {

    //对应桌面地址

    pw = new PrintWriter("C:\\Users\\Administrator\\Desktop\\csDoc.html");

    //输出到html,然后桌面找到csDoc.html打开看效果

    pw.write(docxContent);

    } catch (FileNotFoundException e) {

    }finally {

    if(pw != null) {

    pw.close();

    }

    }

    return docxContent;

    }

    private String readPicture(PicturesTable pTable, CharacterRun cr,int i,String imgPath) {

    // 提取图片

    Picture pic = pTable.extractPicture(cr, false);

    // 返回POI建议的图片文件名

    String img = pic.suggestFullFileName();

    img = createNumber() +i+ img;

    String fileName = imgPath + img;

    File file = new File(fileName);

    //如果路径不存在,则创建

    if (!file.getParentFile().exists()) {

    file.getParentFile().mkdirs();

    }

    OutputStream out=null;

    try {

    out = new FileOutputStream(new File(fileName));

    pic.writeImageContent(out);

    }catch(Exception e) {

    //异常按业务需求处理

    return "";

    }finally {

    if(out != null) {

    try {

    out.close();

    } catch (IOException e) {

    e.printStackTrace();

    }

    }

    }

    return fileName;

    }

    /**

    * 生成18位编号,yyyyMMddHHmmss+4位随机数(共18位)

    */

    private String createNumber(){

    SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");

    Random r = new Random();

    return sdf.format(new Date())+(r.nextInt(9000)+1000);

    }

    }

    展开全文
  • 六个jar包:后台代码:import java.io.File;import java.io.FileInputStream;import java.io.InputStream;import org.apache.poi.hwpf.extractor.WordExtractor;public class Test {public String readWord(String ...

    六个jar包:

    77b45625269bce7d4e22ab5aebb17aec.png

    后台代码:

    import java.io.File;

    import java.io.FileInputStream;

    import java.io.InputStream;

    import org.apache.poi.hwpf.extractor.WordExtractor;

    public class Test {

    public String readWord(String path) {

    String buffer = "";

    try {

    if (path.endsWith(".doc")) {

    InputStream is = new FileInputStream(new File(path));

    WordExtractor ex = new WordExtractor(is);

    buffer = ex.getText();

    ex.close();

    } else {

    System.out.println("请选择后缀为.doc的文件");

    }

    } catch (Exception e) {

    e.printStackTrace();

    }

    return buffer;

    }

    public static void main(String[] args) {

    Test tp = new Test();

    String content = tp.readWord("D:\\ceshi.doc"); //文件存放的地址

    System.out.println("content===="+content);

    }

    }

    展开全文
  • 使用java方便读取word 中的内容,效率高
  • Java代码实现doc后缀文件转换成docx后缀文件,eclipse下直接运行
  • Java 读取Doc/Docx 文档

    万次阅读 2019-08-01 16:20:00
    Java后台系统中常常会遇到读取文档内容的需求,今天把 Java 读取两种格式的word文档写了一个简单的工具类附上: 1. 需要添加 Apache.poi 的依赖 <!-- apache poi--> <dependency> <groupId>...
  • java读取doc、docx、slx、xlsx等word和excel文件,方法都集合在Read类中,返回一个HTML路径,可以用在WEB开发上,功能强大
  • java读取.doc文件

    千次阅读 2019-04-09 23:13:24
    需要的jar包: poi-3.17.jar poi-scratchpad-3.17.jar poi-ooxml-3.17.jar poi-ooxml-schemas-3.17.jar 下载地址:poi jar包下载地址 ...import java.io.*;...import java.io.File;...import java.io.F...
  • pom.xml文件eclipse提供Dependencies直接添加依赖jar包的工具:直接搜索poi以及poi-ooxml即可,maven会自动依赖需要的jar包:poi提供microsoft office旧版本支持,eg .xls Excelpoi-ooxml提供microsoft office新版本...
  • java读取INI文件

    2018-02-28 15:22:58
    jar包。包含DOC文档。能够读取ini格式的配置文件。欢迎下载,有问题请留言。
  • java读取doc,docx文件源码,请大家参考。lib有在我的资源里边找
  • Java读写word文件

    2013-02-01 14:51:04
    java读写word文件,是java2word,而不是poi,在网上找到的poi写入,其实写的还是一个文本文档,再用poi类就打不开了
  • 使用JavaDOC文件转换为DOCX

    千次阅读 2021-02-26 09:58:30
    JODConvertor通过网络协议调用OpenOffice / LibreOffice . 因此,它可以“在OpenOffice中执行任何操作” . 这包括转换格式 . 但它只能像您运行的任何OpenOffice版本一样出色 . 我的一个文档中有一些艺术,并没有像我...
  • 使用POI读写Word doc文件 Apache poi的hwpf模块是专门用来对word doc文件进行读写操作的。在hwpf里面我们使用HWPFDocument来表示一个word doc文档
  • 今天小编就为大家分享一篇java实现读取txt文件并以在每行以空格取数据,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 场景:因要处理大量行业数据每个(大部分)单个项目文件中包含一份文档说明部分是txt,另外大部分是doc/docx.通过 百度得到需要poi方式 读取。大体是参考此处博主文章:...
  • import java.io.*;import org.apache.poi.hwpf.HWPFDocument;import org.apache.poi.hwpf.usermodel.Paragraph;import org.apache.poi.hwpf.usermodel.Range;import org.apache.poi.hwpf.usermodel.Section;public c...
  • 如果很多时候我们没有约定好文件格式,我们就难以读取文件内容,此时,我们就需要一个工具来探测所读文本的编码格式,此工具可以允许用户读取诸如utf-8,gbk,gb2312一类的文件格式。内置了一些常用的探测实现类,...
  • Java读取xml文件的四种方法.doc
  • java读取doc,docx文档所必备的一些jar整理如下,敬请参考。
  • org.apache.poi.poifs.filesystem.FileMagic可以帮助您仅检测文件存储格式,而不仅仅是为了区分.doc / .xls文件.此外,似乎POI库中没有任何可用的直接API来确定给定输入流/文件的文档类型(excel或文档).下面的示例我...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 70,946
精华内容 28,378
关键字:

java读取doc文件

java 订阅