使用JACOB进行Excel读写控制

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

1、 下载JACOB包:http://danadler.com/jacob/

2、 安装配置

解压jacobBin_17.zip

(1)jacob.dll所在目录放到PATH中

(2)jacob.jar放到CLASSPATH中

3、使用jacob进行Excel控制,下面是我写的一个测试程序代码

import com.jacob.com.*;

import com.jacob.activeX.*;

class ExcelTest

{

private static ActiveXComponent xl;

private static Object workbooks = null;

private static Object workbook = null;

private static Object sheet = null;

private static String filename =null;

private static boolean readonly = false;

public static void main(String[] args)

{

String file = "f:\\java\\test.xls";

OpenExcel(file,false);//false为不显示打开Excel

SetValue("A1","Value","2");

System.out.println(GetValue("A3"));

CloseExcel(false);

}

//打开Excel文档

private static void OpenExcel(String file,boolean f)

{

try

{

filename = file;

xl = new ActiveXComponent("Excel.Application");

xl.setProperty("Visible", new Variant(f));

workbooks = xl.getProperty("Workbooks").toDispatch();

workbook = Dispatch.invoke(workbooks,

"Open",

Dispatch.Method,

new Object[]{filename,

new Variant(false),

new Variant(readonly)},//是否以只读方式打开

new int[1] ).toDispatch();

}catch(Exception e)

{e.printStackTrace();}

}

//关闭Excel文档

private static void CloseExcel(boolean f)

{

try

{

Dispatch.call(workbook,"Save");

Dispatch.call(workbook, "Close", new Variant(f));

} catch (Exception e) {

e.printStackTrace();

} finally {

xl.invoke("Quit", new Variant[] {});

}

}

//写入值

private static void SetValue(String position,String type,String value)

{

sheet = Dispatch.get(workbook,"ActiveSheet").toDispatch();

Object cell = Dispatch.invoke(sheet, "Range",

Dispatch.Get,

new Object[] {position},

new int[1]).toDispatch();

Dispatch.put(cell, type, value);

}

//读取值

private static String GetValue(String position)

{

Object cell = Dispatch.invoke(sheet,"Range",Dispatch.Get,new Object[] {position},new int[1]).toDispatch();

String value = Dispatch.get(cell,"Value").toString();

return value;

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航