【问题标题】:Android - Save Form Data Locally To CSVAndroid - 将表单数据本地保存到 CSV
【发布时间】:2011-08-20 20:30:55
【问题描述】:

我有一个使用简单 js、jquery mobile 和 phonegap 的简单 Android 应用程序,其中包含我想在 /sdcard 上写入 CSV 的表单数据。我想不出最好的方法来做到这一点。它需要在本地写入 CSV,因为该设备无法访问 Internet。每次提交表格时,每个 CSV 文件名必须是唯一的,包含“CompanyName”字段。我到处搜索,无法弄清楚。请帮忙...

【问题讨论】:

    标签: javascript android html csv cordova


    【解决方案1】:

    我已经实现了类似的东西(通过没有互联网连接的移动网络应用读取/写入数据)。 您也许可以使用我采用的相同方法,即在 Android 中使用自定义 ContentProvider 来保存您的数据。如果数据不大,这种方法应该可行。如果是这种情况,那么您可以执行以下操作:

    1. 创建自定义内容 URI 方案,例如 content://myuri。这是 Android 的一个简洁功能,因为我可以从内置浏览器调用此 URI,甚至可以使用 HTML 页面中的链接。它基本上将此 URI 视为任何其他 http:// uri
    2. 在编写的实现中,您可以将 URL 设计为 content://myuri/writeData/input1=value1/input2=value2/input3=value3 等等。我不确定 ContentProvider 接受的 URI 长度是否存在限制,这就是我在上面提出警告的原因。我上次尝试这种方法时没有大表格
    3. 在实施 ContentProvider 扩展时,您需要覆盖函数 public ParcelFileDescriptor openFile (Uri uri, String mode) 并让它们解释步骤 #2 中给出的 URI。实现应该解析 URI,然后按照您的意图将数据写入 CSV
    4. 您可以使用不同的 URI 方案取回此数据,例如 content://myuri/getData/[theFileID],现在在上面 #3 的实施中,您将执行相反的操作并将 CSV 数据返回到您的移动网络-应用程序

    如果您有任何问题,请告诉我。

    【讨论】:

    • 我理解您的建议,但我有超过 200 个输入/值。还有其他简单的方法吗?
    • 嗯,我正在考虑将本地 http 处理程序(迷你网络服务器)放在手机上,这样我就可以指向 localhost,并认为有人已经想出了同样的方法,但没有找到这样的项目。我会玩弄它,如果我想出一些有用的东西,我会告诉你
    • 我找到了一个完全符合我要求的应用程序。它被称为表单生成器。它可以选择将数据导出到 CSV。我必须弄清楚他们是怎么做到的。
    • @momo 嗨 momo,你有没有在你的应用程序中加入这个..我可以得到一个小的示例代码来实现这个
    • @user899641:如果您将您的评论作为答案,那么您现在已经获得了奖励。 :-) 谢谢!
    猜你喜欢
    • 2015-05-15
    • 2014-07-07
    • 1970-01-01
    • 1970-01-01
    • 2016-01-05
    • 2012-10-17
    • 2015-02-26
    • 1970-01-01
    相关资源
    最近更新 更多