如何从 Android 应用程序中读取 OpenOffice 文档电子表格?

Posted

技术标签:

【中文标题】如何从 Android 应用程序中读取 OpenOffice 文档电子表格?【英文标题】:How to read an OpenOffice document spreadsheet from an android application? 【发布时间】:2010-10-01 16:24:05 【问题描述】:

我想从我的 android 应用程序中读取 Open Office Document 电子表格(.ods 文件)。我基本上需要遍历前两列并将它们存储在 SQLite 数据库中。

我可以通过使用以下代码读取存储在 res/raw 中的常规 text 文件来做到这一点:

    InputStream is = context.getResources().openRawResource(R.raw.my_text_file);

但不知道如何对 .ods 文件执行相同操作。

我搜索了 SOF 并找到了对 jOpenDocument 的引用。但他们谈论不属于 android SDK 的库,我不知道如何处理这些。

感谢任何帮助!

【问题讨论】:

【参考方案1】:

如果文件必须是 ODS 格式,类似于 XML 格式,您可以自己解析它。查看以下链接。

http://www.go4expert.com/forums/showthread.php?t=19110

否则,我可以建议先将其转换为 CSV 吗? CSV 表示逗号分隔值。因此,它使用更简单的语法,其中每一行由换行符分隔,一行中的每一列由逗号分隔。为此,您可以使用此代码来获取每一行:

http://www.java2s.com/Code/Java/Development-Class/SimpledemoofCSVmatchingusingRegularExpressions.htm

【讨论】:

voteup @ AndrewKS:现在,我决定采纳你的建议,使用 CSV 类型的文本文件而不是 ODS 文件。我所做的唯一小改动是使用哈希字符 (#) 作为分隔符,而不是逗号,因为我的数据包含逗号。我仍然想尝试使用 ODS 文件,但它现在处于次要位置。感谢您的回答!【参考方案2】:

仅供参考,您可以将一些外部 JAR 库导入到您的 android 项目中。

【讨论】:

谢谢。你有如何做到这一点的链接吗? 给你,很简单:***.com/questions/1334802/…【参考方案3】:

JODF 支持 Android 2.2+ 和 Java 1.5+。它是开放文档格式的 Java API

【讨论】:

以上是关于如何从 Android 应用程序中读取 OpenOffice 文档电子表格?的主要内容,如果未能解决你的问题,请参考以下文章

应用程序启动android时如何从内部存储中读取文件

如何使用 java/android 从 Firebase ONCE 读取数据?

如何仅读取和显示从收件箱到 Android 应用程序的交易消息

如何从 Android 读取 MYSQL 数据库?

如何从android中的联系人读取电子邮件字段?

如何使用 android studio 从应用程序中的内部或外部存储(SD 卡)读取文件?