如何在不安装 MS Office 且不使用互操作库的情况下读取服务器中的 MS Office 文件?

2023-11-21

互操作库速度很慢,需要安装 MS Office。 很多时候您不想在服务器上安装 MS Office。

我想用阿帕奇兴趣点,但我在 .NET 上。

我只需要提取文件的文本部分,而不是在 Office 文件中创建或“存储信息”。

我需要告诉您,我有一个非常大的文档库,但无法将其转换为较新的 XML 文件。

我不想为二进制文件编写解析器。 像 Apache POI 这样的库可以为我们做到这一点。不幸的是,它仅适用于 Java 平台。也许我应该考虑用 Java 编写这个应用程序。

我仍然没有在 .NET 中找到 POI 的开源替代品,我想我会用 Java 编写自己的应用程序。


对于所有 MS Office 版本:

  • 您可以使用第三方组件,例如TX 文本控件对于单词和TMS Flexcel Studio对于Excel

对于新办公室(2007 年):

  • 您可以使用 .net 功能做一些基本的事情system.io.packaging。看看如何在http://msdn.microsoft.com/en-us/library/bb332058.aspx

对于旧办公室(2007 年之前):

  • 旧的 Office 格式现已记录:http://www.microsoft.com/interop/docs/officebinaryformats.mspx。如果你想做一些非常简单的事情,你可以考虑尝试一下。但请注意,这些格式非常复杂。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在不安装 MS Office 且不使用互操作库的情况下读取服务器中的 MS Office 文件? 的相关文章

随机推荐

  • iFrame onload JavaScript 事件

    我有一个 iFrame 我想在加载后向其中发送 JavaScript 命令 我当前的代码如下所示 但使用此代码时 命令不会执行 我必须改变什么才能让它发挥作用 仅需要支持 Chrome 和 Firefox 使用 iFrame 的 onloa
  • 为什么 MQTT 无法与 NodeJS 连接?

    我在尝试连接时遇到一个奇怪的问题MQTT服务器与NODEJS 如果我连接到MQTT服务器和我没有连接它只是挂起 如果我使用命令行执行此操作 我会看到数据 因此网络 服务器等都很好 如果我使用错误的端口 那么命令行会给我一条有效的拒绝消息 但
  • 为什么 django-lint 告诉我 `auto_now_add` 已被弃用?

    各位 Djangonauts 朋友们大家好 我检查了我的项目Django lint 它产生 W 211 16 MyModel timestamp Uses superceded auto now or auto now add The 提交
  • 使用 Oracle PL/SQL Developer 生成测试数据

    我想测试一些模式和索引 并且想知道 PL SQL Developer 中是否有可以生成测试数据的功能 这样我就不必创建序列和循环来在表中插入数据 循环和 PL SQL 并不总是必要的 这个技巧可能会有所帮助 insert into emp
  • Discord window.localStorage 未定义。如何访问 Discord 页面上的 localStorage?

    当我跑步时window localStorage on https stackoverflow com它返回localStorage但是当我在 Discord 页面上使用相同的命令时它会返回undefined每次 Discord 是否正在采
  • Phonegap Cordova - 全屏后底部黑色状态栏

    从我记事起我就一直遇到这个问题 我认为这可能只是来自我的手机或仿真 但在发布我的应用程序后 我仍然在屏幕底部看到这个黑色矩形 它看起来像状态栏 在我的 config xml 中有此内容后会发生这种情况
  • 有没有更简单快速的方法来检测(Windows Phone 7)设备是否有互联网连接

    是否有更简单快速的方法来检测 Windows Phone 7 设备是否有互联网连接 我当前正在发送网络请求 等待超时时间并处理异常 希望有一种快速简单的方法来查询设备 在发送任何请求之前查看它是否有连接 提前致谢 如果没有连接 此方法将返回
  • PHP 获取图像高度和宽度

    您好 我需要动态获取上传图像的高度和宽度 这是我正在使用的 PHP 函数 但它不会返回任何宽度和高度 请你帮助我好吗 list width height type attr getimagesize FILES Artwork min wi
  • 实体框架+存储库+单元或工作问题

    我正在考虑使用 EF 4 启动一个新项目并浏览一些文章 我发现了一篇关于 EF 以及存储库模式和工作单元的文章 http blogs msdn com b adonet archive 2009 06 16 using repository
  • 为什么“uniq”将相同的单词视为不同的单词?

    我想计算文件中单词的频率 其中单词是一行一行的 该文件非常大 因此这可能是问题所在 在本例中共有 300k 行 我执行这个命令 cat temp occ uniq c sort k1 1nr k2 gt distribution txt 问
  • Symfony 2:控制器的依赖注入(DI)

    是否有机会使控制器依赖于其服务 而不是通过使用其中的服务容器 而是通过纯粹的构造函数依赖注入 我想用这种方式编写控制器
  • Python lambda函数计算数字的阶乘

    我刚刚开始学习Python 我遇到了 lambda 函数 在其中一个问题上 作者要求编写一个用于数字阶乘的单线性 lambda 函数 这是给出的解决方案 num 5 print lambda b lambda a b a a b lambd
  • bash:如何评估 PS1、PS2……? [复制]

    这个问题在这里已经有答案了 可能的重复 Echo 扩展 PS1 有什么办法可以 评估 吗 PS1 PS2等来自 bash 脚本中的内容 虽然 我可以使用替代方法来获取当前的所有元素PS1 我真的希望能够重用它的定义 而不是使用这些替代方法
  • PyQT QTreeWidget迭代

    我有两列QTreeWidget 一列代表一个网址列表第二个代表results 我已加载第一列中的网址列表 现在我想迭代此列表 并在迭代期间更改第二列中的文本 如何实现这一目标 您可以致电QTreeWidget invisibleRootIt
  • 为什么WebSocket“握手后”可以与HTTP共享80端口?

    我认为 端口指定服务器上的程序 当我们说to share a port 实际上意味着to have the requests processed by the same program listening on that port WebS
  • 如何使用 cygwin/mingw 在 Windows 上编译 PHP 扩展?

    我正在尝试建立RabbitMQ PHP 包装器和AMPQ PHP 包装器在 Windows 64 上使用 Cygwin 我已经成功构建了底层 C 库 librabbitmq dll 但我陷入了 phpize 步骤 phpize config
  • JPA OneToMany - 集合为空

    我正在尝试使用 JPA 建立双向关系 我了解维持双方关系是应用程序的责任 例如 图书馆有多本书 在图书馆实体中我有 Entity public class Library OneToMany mappedBy library cascade
  • 将 UIImage 裁剪为 alpha

    我有一个相当大的 几乎全屏的图像 我将在 iPad 上显示它 图像的透明度约为 80 我需要在客户端确定不透明像素的边界框 然后裁剪到该边界框 扫描 StackOverflow 上的其他问题并阅读一些 CoreGraphics 文档 我想我
  • 在没有组件的情况下在vue js中拖放

    我想在 vue js 中使用 html 5 拖放 我看到了 w3schools 关于拖放的教程 它在一个简单的 html 文件中工作 但在我的 vue 项目中不起作用 我的教程代码和链接是 w3schools 拖动 https www w3
  • 如何在不安装 MS Office 且不使用互操作库的情况下读取服务器中的 MS Office 文件?

    互操作库速度很慢 需要安装 MS Office 很多时候您不想在服务器上安装 MS Office 我想用阿帕奇兴趣点 但我在 NET 上 我只需要提取文件的文本部分 而不是在 Office 文件中创建或 存储信息 我需要告诉您 我有一个非常