java - 将文本数据存储在一个/多个文件中以使其可用于各种平台的最佳方法是什么?

标签 java android ios cloud-storage

我正在开发一个知识库 Java 应用程序,我可以在其中存储和检索带有标题、注释创建日期(SQL 日期时间)、内容、注释标签等的注释。

可以使用数据库轻松完成(我使用的是 SQL Server 2014),但主要问题是服务器在我自己的 PC 上运行,它必须始终打开并运行 SQL Server。此外,我想通过在 Android 和 iOS 移动应用程序上存储和检索此类数据来扩展应用程序。

有没有其他方法可以将这种类型的数据存储在某些文件中,以便可以将其上传到某些云存储(如 Dropbox)?将其存储在 Dropbox 上后,我所要做的就是将应用程序与 Dropbox 同步、获取文件和读/写内容。

更新:感谢所有的回答,他们对我帮助很大。正如 Gabe Sechan 评论的那样,对我来说最好的解决方案是用 SQlite 替换 SQL Server。现在,我可以在不需要 24/7 全天候运行的服务器的情况下对数据库进行更改,并且我可以在 Android 和 iOS 应用程序上使用相同的数据库。

最佳答案

您可以只使用基本的 ajax 调用从 Dropbox“公共(public)”URL 中提取内容。

function(contenturl,intoselector,callback){
            if (contentwindow.currenttopic!==contentID){
                jQuery.ajax({
                    type:'GET',
                    url:'//www.corsproxy.com/'+contenturl,
                    dataType:'text',
                    async:true,
                    success:function(data){
                        intoselector.html(data);
                        if (jQuery.type(callback)==="function")
                            callback();
                    }
                });
            }

请注意,此示例通过 corsproxy 进行拉取,因此您不会收到任何 XSS 错误,因此您传递的 url 需要不包含协议(protocol)本身。

如果您想提取存储在文件中的 JSON 或 XML 字符串,那么您可能需要在 ajax 调用中使用 dataType 和 contenttype 选项。

关于java - 将文本数据存储在一个/多个文件中以使其可用于各种平台的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27867583/

相关文章:

java - Android:NullPointerException 使用 SharedPreferences

android - 从不同的 fragment 获取 EditText 值

ios - 我怎样才能让 Xcode 警告其他开发人员构建目标不支持的方法?

Android 设备选择器在目标列中显示红色 X

android - 找不到变量 : regeneratorRuntime (ReactNative)

ios - 为什么不能将 recordAudioURL 分配给 segue.destination 对象?

iOS 滑动抽屉

java - Android 运行时异常 :Activity must implement OnFragmentInteractionListener

java - Maven/Eclipse项目结构

Java:如果我有一个正在运行的程序实例,我如何检测到它,然后关闭旧的