【问题标题】:Cross-platform flat-file data storage for ASP/PHP用于 ASP/PHP 的跨平台平面文件数据存储
【发布时间】:2013-10-24 09:15:52
【问题描述】:

我正在 ASP.Net/C# 中启动一个小项目,将来可能会移植到 PHP 和其他语言。这个项目的设置在不同平台上都是相同的,但可以由用户修改,所以我想将它们存储在一个平面文件中,比如 XML、JSON 或 YAML。

我宁愿避免使用外部库。我希望我的应用程序基本上独立于一个文件中。

最普遍接受的平面文件格式是什么?例如,我知道 PHP5 可以处理 JSON 而无需任何额外的东西,但在 ASP.NET 中我需要安装 JSON.NET。

是否有任何文件可以创建一个通用可读的复杂数据结构,而无需外部库?

【问题讨论】:

    标签: php asp.net xml json yaml


    【解决方案1】:

    为此,我研究了 YAML、JSON、XML 和 SQLite*。

    YAML

    • 优点:可读性强。

    • 缺点: 需要 PHP 和 ASP.NET 中的外部库

    XML

    • 优点:广泛使用,在 ASP.NET 中原生支持

    • 缺点: 需要PHP中的外部库,不正确关闭标签容易搞砸,比JSON和YAML占用更多空间,可读性不强

    JSON

    • 优点:占用空间小,原生支持 PHP

    • 缺点:需要 ASP.NET 中的外部库

    SQLite

    • 优点:全数据库,SQL查询支持

    • 缺点:ASP.NET和PHP都需要外部库,没有第三方应用无法查看

    答案:

    基本上,JSON 是最接近我想要的。虽然它在 ASP.NET 中不原生支持,但 JSON.NET 是一个出色的、有据可查的插件,并且 nuget 使其可以轻松安装在任何项目上。

    我很想使用 YAML,因为它的可读性非常好,但它需要两种语言的库,而且它们根本没有很好的文档记录。

    * 简要介绍的是平面文件存储。虽然 SQLite 不是平面文件,但它是存储数据的单个文件,因此非常接近简介

    【讨论】:

      猜你喜欢
      • 2010-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-05
      • 1970-01-01
      • 2020-04-14
      • 1970-01-01
      • 2018-02-21
      相关资源
      最近更新 更多