top
linkSite
 
 
首页  |  产品  |  销售  |  在线订购  |  服务  |  下载  |  新闻  |  二次开发  |  关于我们  |  永中未来星  |  永中论坛   
macro
概况
解决方案
编程指南
使用技巧
技术支持
 
search
新闻搜索
当前位置:首页 > 二次开发 > 使用技巧 > 永中Office文件流操作编程指南
永中Office文件流操作编程指南

前言

  永中Office是一款中国人完全自主开发的新一代Office办公软件,她以其丰富的功能、简洁清爽的易用性、出色的双向兼容和强大的二次开发能力,正日益受到广大用户和开发厂商的青睐。

  永中Office提供了宏编辑器模块,其宏语言采用与其开发语言相同的Java语言,可与Office功能本身进行无缝地集成。

  永中Office可以Applet的方式嵌入浏览器,也可以Panel的方式嵌入Java应用程序中,永中Office还开发了Java本地调用API,方便其他Java应用程序调用永中Office;永中还实现了COBAR体系结构,方便其他语言如C、C++等调用永中Office提供的丰富的API。

  本文简要介绍在永中Office中与文件操作有关的编程技巧。

文件流操作

  永中Office提供了文件流操作API,可将编辑的文档内容以文件流形式加以保存和打开,特别适合存储在数据库中。

  在application.Workbooks类中提供了下列API:


/**
* 从一个byte数组创建一个EIO文件
* @param data 以byte数组表示的数据源
* @param tempFileName 创建的临时文件名称,包括路径名,此路径必须可写
* @param option 打开方式
* option = 0 正常打开
* option = 1 正常打开
* option = 2 以只读方式打开
* option = 3 以副本方式打开
*@param mode 导入方式
* mode = 1 打开eio
* mode = 2 将微软格式文档导入到当前集成文件中
* @ throws Exception
* @ return 以Workbook表示的EIO文件
*/
public Workbook createWorkbookFromByteArray(byte[] data, String tempFileName, final int option, final int mode) throws Exception

/**
* 从网路或本地读取一个EIO文件,在内存中复制,将复制的EIO文件以byte数组返回.
* @param url 文件读取地址.
* @return 将复制的EIO文件以byte数组返回
* @throws IOException
*/
public byte[] getWorkbookAsByteArray(URL url) throws IOException
/**
* 从网路或本地读取一个EIO文件,在内存中复制,将复制的EIO文件以byte数组返回.
* @param url 文件读取地址.
* @return 将复制的EIO文件以byte数组返回
* @throws IOException
*/
public byte[] getWorkbookAsByteArray (Workbook book) throws IOException

/**
* 从网路或本地读取一个EIO文件,在内存中复制,将复制的EIO文件以Base64编码方式编码.
* @param url 文件读取地址.
* @return 将复制的EIO文件以Base64编码方式编码
* @throws IOException
*/
public String getWorkbookBase64Encoded(URL url) throws Exception
以下是获得文件流的一个具体例子。
/**
* 本例子中的程序为三个具体应用的部分程序的示例。
* 1、获得当前的Workbook的文件流
* 2、获得所有Workbook的文件流
* 请根据代码考虑一下如何实现贵公司的功能。
*/
/**
*打开一个集成文件.
*方法的原型为:openWorkbook(java.lang.String filename, int option, int mode)
* Parameters:
* filename - 集成文件名
* option - 打开方式
* option = 0 正常打开
* option = 1 正常打开
* option = 2 以只读方式打开
* option = 3 以副本方式打开
* mode - 导入方式
* mode = 1 打开eio
* mode = 2 将微软格式文档导入到当前集成文件中
*/
Application.getWorkbooks().openWorkbook("C:/EIO_Binders/testmacro.eio",0,1);
//获取当前所有集成文件对象
Workbooks books = Application.getWorkbooks();
//获取当前活动集成文件
Workbook book = books.getActiveWorkbook();
byte[] bookByte = null;
try
{
/**
* 从网路或本地读取一个EIO文件,在内存中复制,将复制的EIO文件以byte数组返回.
* @param url 文件读取地址.
* @return 将复制的EIO文件以byte数组返回
* @throws IOException
*/
bookByte = book.getWorkbookAsByteArray()
}
catch(IOException ex)
{
}
/**
*以下方法为获得所有的Workbook的文件流:
*/
Workbook book = null;
byte[] byte = null;
for (int i = 0; i < books.length; i ++)
{
book = books[i];
try
{
/**
* 从网路或本地读取一个EIO文件,在内存中复制,将复制的EIO文件以byte数组返回.
* @param url 文件读取地址.
* @return 将复制的EIO文件以byte数组返回
* @throws IOException
*/
byte = book.getWorkbookAsByteArray()
}
catch(IOException ex)
{
}
}

 

  永中Office提供了翔实的中文JavaDoc文档,并对合作伙伴提供电话、电子邮件和现场开发等多种技术支持服务。

  总之,用Java开发的永中Office具备Java天生的众多优点,其强大的文档编辑功能和灵活的编程方式,是二次开发厂商的选择文档编辑器的理想之选。

 
right
 永中集成Office 2007
 产品聚焦
·产品注册
·在线升级
·2007试用版下载
·补丁下载
 资料下载
·模板下载
·产品白皮书
·应用秘笈
·二次开发手册
 与我们联系
·800-808-6655
·0510-85213588(客服)
公司荣誉
二次开发
bottom
Copyright © 2001-2008 永中科技有限公司
电话:0510-85213588 8008086655 传真:0510-85218836