QCon北京开幕在即|与全球 140+ 顶尖工程师共同解构 AI 时代的技术浪潮 了解详情
写点什么

文章:用 Java 操作 Office 2007

  • 2007-09-20
  • 本文字数:711 字

    阅读完需:约 2 分钟

本文提到的主要问题是如何使 Office 和 Java 共同工作,也就是说让 Java 应用程序来操作 Office 文档:比如创建文档,编辑文档,收集数据等等。Ted Neward 这个互操作方面的专家给出了自己的理解。

从以往看来,要在 Office 和 Java 之间进行互操作经常会出现一些问题,这是由于 Office 文档(主要是 Word,Excel 和 PowerPoint)是存储在一个二进制格式文件中,在 COM 中被称为结构化存储格式, 是一个通过 COM 接口的层次化二进制格式。对 COM 开发者(或者其他使用 COM 相关语言的开发者,如 Visual Basic, Delphi 和 C++/ATL)而言非常方便,但产生的文件对于那些不能“讲 COM”的语言是无法访问的。有许许多多的应用程序都是为了让 Java 语言可以访问这些文件的内容;比如大家都知道 Excel 可以读取逗号分隔符文件(CSV),因此,Java 应用程序相应将数据导出到 Excel 友好的格式时一般会选用 CSV 格式(或是其他丑陋的格式)。Word 则是可以读取富文本格式(RTF)文件,而 RTF 标准是公开和有详细文档的。Office 的后来者,Office 2003,引入了一个新的 XML 格式(WordML),Java 开发者可以用它来读写 Office 文档,但是这些格式并没有很好的文档,Java 开发者频繁的发现自己是通过试错法来进行 WordML 格式的学习等等。

总体上来说,如果温和一点说的话,Java/Office 的故事是一个非常讨厌的境况。对于 Java 的开发人员而言,他们要么一边嘴里说着 “Office 这种破东西怎么还会有人想去用它”一边用记忆里的伊索寓言来安慰自己,要么干脆告诉那些使用 Office 的客户由于 Microsoft 和 Sun 两家公司之间的诉讼,Java 不能操作 Office。

那么在 Office 2007 里,这些情况有没有得到改善?

阅读全文:用 Java 操作 Office 2007

2007-09-20 20:041032

评论

发布
暂无评论
发现更多内容

顶层设计出台 浪潮云破局再生长丨与千行百业扬帆数字蓝海

云计算

从一次CPU打满到ReDos攻击和防范

京东科技开发者

正则表达式 Web 企业号 3 月 PK 榜 ReDoS

从计费出账加速的设计谈周期性业务的优化思考

鲸品堂

运营商 业务流程优化 企业号 3 月 PK 榜

不要因为这件小事,让你的网站在危险中“狂飙”

嘉为蓝鲸

自动化运维 weops 嘉为蓝鲸

还不知道线程池的好处,快来了解一下

华为云开发者联盟

开发 华为云 华为云开发者联盟 企业号 3 月 PK 榜

LED广告宣传车与LED流动舞台车的区别

Dylan

广告 LED 户外LED显示屏

基于大规模边缘计算的千万级聊天室技术实践

环信

聊天室 大规模边缘计算 千万级

假如面试官要你手写一个promise

helloworld1024fd

JavaScript 前端

山东大学数字图像处理实验:MATLAB的图像显示方法

timerring

数字图像处理

MASA MAUI Plugin (九)Android相册多选照片(使用Android Jetpack套件库)

MASA技术团队

.net MASA MAUI

云原生可观察性工具泛滥的思考

HummerCloud

云原生 可观察性

CutLER:更好地训练无监督识别模型

Zilliz

【明晚直播】KunlunBase 1.1 版本发布:完善MySQL 兼容性,OLAP性能提升

KunlunBase昆仑数据库

MySQL 数据库 PgSQL 线上直播

干货 | 中小型金融企业该如何进行灾备建设?

嘉为蓝鲸

金融 自动化运维 嘉为蓝鲸 灾备建设

直播 | StarRocks 实战系列第三期--StarRocks 运维的那些事

StarRocks

数据库 开源 运维

Switchquery:移动端秒级配置触达平台

京东科技开发者

App 配置原理 用户触达 企业号 3 月 PK 榜

TSBS 是什么?为什么时序数据库 TDengine 会选择它作为性能对比测试平台?

TDengine

性能测试 时序数据库 ​TDengine

轻量易部署!Coolbpf 发布不依赖 Clang 的脚本化编程特性 lwcb | 龙蜥技术

OpenAnolis小助手

开源 rust ebpf coolbpf lwcb

前端一面常见vue面试题合集

bb_xiaxia1998

Vue 前端

企业号 3 月 PK 榜,火热开启!

InfoQ写作社区官方

热门活动 企业号 3 月 PK 榜

可观测指标管理体系建设落地及插件功能设计和生态打造

嘉为蓝鲸

可观测 自动化运维 嘉为蓝鲸

ChunJun 1.16 Release版本即将发布,bug 捉虫活动邀您参与!

袋鼠云数栈

重磅福利!阿里云机器学习平台PAI+AI开源项目测评来啦

阿里云大数据AI技术

AI

应用模型开发指南上新介绍

HarmonyOS开发者

HarmonyOS

走进RocketMQ(三)消息存储与消费

白裤

Java RocketMQ RocketMQ消息存储 RocketMQ消息消费

基于头肩部检测的过线客流统计

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号 3 月 PK 榜

推荐系统[四]:精排-详解排序算法LTR (Learning to Rank)_ poitwise, pairwise, listwise相关评价指标,超详细知识指南。

汀丶人工智能

自然语言处理 推荐系统 搜索算法

开发者体验:现代企业架构的关键一环

SEAL安全

平台工程 企业号 3 月 PK 榜 开发者体验

网络性能总不好?网络调优专家AOE帮你来“看看”

华为云开发者联盟

人工智能 华为云 网络性能 华为云开发者联盟 企业号 3 月 PK 榜

ChatGPT 爆火,社交应用如何 Get 新技能

融云 RongCloud

IM ChatGPT

如何使用C LinkSDK(4.x)快速接入阿里云物联网平台?——实践类

阿里云AIoT

阿里云 物联网 IoT

文章:用Java操作Office 2007_Java_Ted Neward_InfoQ精选文章