Java 加載、操作和保存WPS文字文檔

本文通過Java程序代碼來展示如何來加載、操作及保存WPS格式的文字文檔。

一、基本步驟加載時,通過流加載WPS文字文檔,完成相關文字操作後,再將結果文檔保存到流,將流寫入WPS文檔,關閉流。

二、程序環境

這裏使用的是Word類庫工具Free Spire.Doc for Java,可參考如下步驟手動將D:\包\JAVA Doc\Spire.Doc-FE_3.9.0\lib\Spire.Doc.jar文件夾(該jar包需要事前下載到本地,然後解壓)路徑下的jar文件導入Java程序:

完成導入,如下導入結果:

 

三、Java代碼

這裏對WPS文字文檔的操作進行了段落背景設置、文字高亮、加粗、添加圖片等簡單操作。

import com.spire.doc.*;
import com.spire.doc.documents.HorizontalAlignment;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.documents.TextSelection;
import com.spire.doc.documents.TextWrappingStyle;
import com.spire.doc.fields.DocPicture;

import java.awt.*;
import java.io.*;

public class OperateWPS_Word {
    public static void main(String[] args)throws IOException {
        //通過流加載WPS文字文檔
        FileInputStream inputStream = new FileInputStream(new File("test.wps"));
        Document document = new Document();
        document.loadFromStream(inputStream, FileFormat.Doc);

        //查找所有“北京冬奧會”文本
        TextSelection[] textSelections = document.findAllString("北京冬奧會", false, false);
        //設置文本高亮色、加粗
        for (TextSelection selection : textSelections)
        {
            selection.getAsOneRange().getCharacterFormat().setHighlightColor(Color.YELLOW);
            selection.getAsOneRange().getCharacterFormat().setBold(true);
        }

        //獲取文檔的第一個節
        Section section = document.getSections().get(0);

        //獲取第2段,設置段落背景色
        Paragraph paragraph1 = section.getParagraphs().get(1);
        paragraph1.getFormat().setBackColor(new Color(176,224,230));
        paragraph1.getStyle().getParagraphFormat().setHorizontalAlignment(HorizontalAlignment.Center);

        //獲取第3段,添加圖片到段落
        Paragraph paragraph2 = section.getParagraphs().get(2);
        DocPicture picture = paragraph2.appendPicture("img.png");
        picture.setWidth(200f);
        picture.setHeight(250f);
        picture.setTextWrappingStyle(TextWrappingStyle.Through);


        //將結果文檔保存到流
        ByteArrayOutputStream bos = new ByteArrayOutputStream();
        document.saveToStream(bos, FileFormat.Doc);
        //將流寫入WPS文檔
        FileOutputStream fos = new FileOutputStream("Output.wps");
        fos.write(bos.toByteArray());
        //關閉流
        bos.close();
        fos.close();
    }
}

測試前的WPS文字文檔:

完成操作後的WPS文字文檔:

 

關於使用Java如何操作Word文檔的更多方法,可前往:https://www.cnblogs.com/Yesi/category/1460010.html 

 

—End—

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章