知识大全 java对word、excel、pdf等操作综合文章

Posted

篇首语:宁可枝头抱香死,何曾吹落北风中。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 java对word、excel、pdf等操作综合文章相关的知识,希望对你有一定的参考价值。

  Java操作PDF Java操作Word Excel Access参考:?forum= &thread= &tstart= &trange= Java Excel API 文档 一个jacob操作Word的例子 其他操作excel pdf的sample里都有  import java io File;  import *;  import jacob activeX *;  public class WordTest      public static void main(String[] args)      WordBean word=new WordBean();     word openWord(true);     word createNewDocument();     word insertText( Hello word );           import jacob activeX *;  import *;  public class WordBean extends java awt Panel     private ActiveXComponent MsWordApp = null;   private Dispatch document = null;   public WordBean()        super();      public void openWord(boolean makeVisible)     //Open Word if we ve not done it already     if (MsWordApp == null)            MsWordApp = new ActiveXComponent( Word Application );       //Set the visible property as required      Dispatch put(MsWordApp Visible             new Variant(makeVisible));      public void createNewDocument()     //Find the Documents collection object maintained by Word     Dispatch documents =         Dispatch get(MsWordApp Documents ) toDispatch();  //Call the Add method of the Documents collection to create  //a new document to edit     document = Dispatch call(documents Add ) toDispatch();      public void insertText(String textToInsert)     // Get the current selection within Word at the moment If  // a new document has just been created then this will be at  // the top of the new doc     Dispatch selection =         Dispatch get(MsWordApp Selection ) toDispatch();  //Put the specified text at the insertion point     Dispatch put(selection Text textToInsert);      public void saveFileAs(String filename)        Dispatch call(document SaveAs filename);      public void printFile()     //Just print the current document to the default printer     Dispatch call(document PrintOut );      public void closeDocument()     // Close the document without saving changes  // = wdDoNotSaveChanges  // = wdSaveChanges  // = wdPromptToSaveChanges     Dispatch call(document Close new Variant( ));     document = null;      public void closeWord()        Dispatch call(MsWordApp Quit );     MsWordApp = null;     document = null;      Java Excel 操作excel 从Excel文件读取数据表Java Excel API既可以从本地文件系统的一个文件( xls) 也可以从输入流中读取Excel数据表 读取Excel数据表的第一步是创建Workbook(术 语 工作薄) 下面的代码片段举例说明了应该如何操作 (完整代码见ExcelReading java)import java io *;import jxl *;… … … …try//构建Workbook对象 只读Workbook对象//直接从本地文件创建Workbook//从输入流创建Workbook    InputStream is = new FileInputStream(sourcefile);    jxl Workbook rwb = Workbook getWorkbook(is);catch (Exception e)e printStackTrace();

  一旦创建了Workbook 我们就可以通过它来访问Excel Sheet(术语 工作表) 参考下面的代码片段 //获取第一张Sheet表Sheet rs = rwb getSheet( );我们既可能通过Sheet的名称来访问它 也可以通过下标来访问它 如果通过下标来访问的话 要注意的一点是下标从 开始 就像数组一样 一旦得到了Sheet 我们就可以通过它来访问Excel Cell(术语 单元格) 参考下面的代码片段 //获取第一行 第一列的值Cell c = rs getCell( );String strc = c getContents();//获取第一行 第二列的值Cell c = rs getCell( );String strc = c getContents();//获取第二行 第二列的值Cell c = rs getCell( );String strc = c getContents();System out println( Cell( ) + value : + strc + ; type : + c getType());System out println( Cell( ) + value : + strc + ; type : + c getType());System out println( Cell( ) + value : + strc + ; type : + c getType());如果仅仅是取得Cell的值 我们可以方便地通过getContents()方法 它可以将任何类型的Cell值都作为一个字符串返回 示例代码中 Cell( )是文本型 Cell( )是数字型 Cell( )是日期型 通过getContents() 三种类型的返回值都是字符型 如果有需要知道Cell内容的确切类型 API也提供了一系列的方法 参考下面的代码片段 String strc = null;double strc = ;Date strc = null;Cell c = rs getCell( );Cell c = rs getCell( );Cell c = rs getCell( );if(c getType() == CellType LABEL)LabelCell labelc = (LabelCell)c ;strc = labelc getString();if(c getType() == CellType NUMBER)NmberCell numc = (NumberCell)c ;strc = numc getValue();if(c getType() == CellType DATE)DateCell datec = (DateCell)c ;strc = datec getDate();System out println( Cell( ) + value : + strc + ; type : + c getType());System out println( Cell( ) + value : + strc + ; type : + c getType());System out println( Cell( ) + value : + strc + ; type : + c getType());在得到Cell对象后 通过getType()方法可以获得该单元格的类型 然后与API提供的基本类型相匹配 强制转换成相应的类型 最后调用相应的取 值方法getXXX() 就可以得到确定类型的值 API提供了以下基本类型 与Excel的数据格式相对应 如下图所示 每种类型的具体意义 请参见Java Excel API Document 当你完成对Excel电子表格数据的处理后 一定要使用close()方法来关闭先前创建的对象 以释放读取数据表的过程中所占用的内存空间 在读取大量数据时显得尤为重要 参考如下代码片段 //操作完成时 关闭对象 释放占用的内存空间rwb close();Java Excel API提供了许多访问Excel数据表的方法 在这里我只简要地介绍几个常用的方法 其它的方法请参考附录中的Java Excel API Document Workbook类提供的方法 int getNumberOfSheets()获得工作薄(Workbook)中工作表(Sheet)的个数 示例 jxl Workbook rwb = jxl Workbook getWorkbook(new File(sourcefile));int sheets = rwb getNumberOfSheets(); Sheet[] getSheets()返回工作薄(Workbook)中工作表(Sheet)对象数组 示例 jxl Workbook rwb = jxl Workbook getWorkbook(new File(sourcefile));Sheet[] sheets = rwb getSheets(); String getVersion()返回正在使用的API的版本号 好像是没什么太大的作用 jxl Workbook rwb = jxl Workbook getWorkbook(new File(sourcefile));String apiVersion = rwb getVersion();Sheet接口提供的方法 ) String getName()获取Sheet的名称 示例 jxl Workbook rwb = jxl Workbook getWorkbook(new File(sourcefile));jxl Sheet rs = rwb getSheet( );String sheetName = rs getName(); ) int getColumns()获取Sheet表中所包含的总列数 示例 jxl Workbook rwb = jxl Workbook getWorkbook(new File(sourcefile));jxl Sheet rs = rwb getSheet( );int rsColumns = rs getColumns(); ) Cell[] getColumn(int column)获取某一列的所有单元格 返回的是单元格对象数组 示例 jxl Workbook rwb = jxl Workbook getWorkbook(new File(sourcefile));jxl Sheet rs = rwb getSheet( );Cell[] cell = rs getColumn( ); ) int getRows()获取Sheet表中所包含的总行数 示例 jxl Workbook rwb = jxl Workbook getWorkbook(new File(sourcefile));jxl Sheet rs = rwb getSheet( );int rsRows = rs getRows(); ) Cell[] getRow(int row)获取某一行的所有单元格 返回的是单元格对象数组 示例子 jxl Workbook rwb = jxl Workbook getWorkbook(new File(sourcefile));jxl Sheet rs = rwb getSheet( );Cell[] cell = rs getRow( ); ) Cell getCell(int column int row)获取指定单元格的对象引用 需要注意的是它的两个参数 第一个是列数 第二个是行数 这与通常的行 列组合有些不同 jxl Workbook rwb = jxl Workbook getWorkbook(new File(sourcefile));jxl Sheet rs = rwb getSheet( );Cell cell = rs getCell( );

cha138/Article/program/Java/hx/201311/25581

相关参考

知识大全 通过jacob对excel,word进行打印等操作

  因为项目有个需求要求能够在某个预定时间对特定报表进行自动打印报表的形式主要是excel如果是c++或者c#什么的简直是小菜一碟可惜偏偏是java实现并且这又不同于常见的页面手工打印可以通过java

知识大全 java抽取word,pdf的四种武器

  chris()  毕业于中国人民大学信息学院  年月    很多人用java进行文档操作时经常会遇到一个问题就是如何获得wordexcelpdf等文档的内容?我研究了一下在这里总结一下抽取word

知识大全 JSP生成WORD文档,EXCEL文档,PDF文档

JSP生成WORD文档,EXCEL文档,PDF文档  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!l

知识大全 如何对pdf进行加密,让别人无法转换成WORD

如何对pdf进行加密,让别人无法转换成WORD?这个问题你解决了没有?如果解决了,请告知我一下,谢谢!  以下文字资料是由(全榜网网www.cha138.com)小编为大

知识大全 谁能帮我把PDF格式的文章转换成word,转换后要求是能进行编辑的word,请高手留下QQ,在线等谢谢

急急!谁能帮我把PDF格式的文章转换成word,转换后要求是能进行编辑的word,请高手留下QQ,在线等谢谢  以下文字资料是由(全榜网网www.cha138.com)小

知识大全 求推荐一份入门的计算机教材,主要是教学办公软件的,比如Excel,word,ppt等等的操作。

求推荐一份入门的计算机教材,主要是教学办公软件的,比如Excel,word,ppt等等的操作。  以下文字资料是由(本站网www.cha138.com)小编为大家搜集整理

知识大全 java操作word

  最近在做项目的时候需要这么一个功能客户有一大堆word格式的模板需要我们用程序向模板里面填充一些数据如果是直接重新写一个Word用POI或Itext都可以搞定关键是读取并解析而且Word里有表格图

知识大全 如何在java中操作word

  想用java操作word文件?jacob是个不错的选择也就是java桥你可以在project/下载我下载的版本是注意版本太低的话可能会报错  如果没有特殊需求可以直接使用jacob_*zip中提供

知识大全 求2012浙江省计算机二级办公软件视频教学,要有完整的ppt,word,excel详细视频教学操作。非常感谢

求2012浙江省计算机二级办公软件视频教学,要有完整的ppt,word,excel详细视频教学操作。非常感谢!百度计算机二级考试演练系统浙江省计算机二级办公软件视频教程我帮你找了一份,不知道是不是你需

知识大全 Java调用com组件操作word使用总结

Java调用com组件操作word使用总结  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一准备