3

我有大量数据,一旦经过轻微处理,我想以勉强可读的 ASCII 格式存储。由于数据量大,输入和输出的速度对我来说极其重要。(其中大部分是Float数组中的数据,但也会有一些简单的数据结构和简短的描述性文本字符串。Unicode 支持并不重要。)

除了滚动我自己的特殊格式之外,我在 Scala 中的最佳选择似乎是某种 XML 或 JSON 格式。我的主要考虑是:

  1. 速度——应该足够快,以免这不是处理中的瓶颈
  2. 占用空间小——如果可能的话,我不想添加巨大的依赖项
  3. 直截了当——我会要求简单的操作;我不想花很长时间配置或按摩数据或任何东西;只是数据输出,数据输入。(我很高兴将解析的数据打包到我自己的数据结构中;它不必担心。)

哪个库最符合这些标准?

4

1 回答 1

1

Jackson对我来说是一个快速且易于使用的库。您可以将文本解析为 JSON AST,也可以将数据映射到特定于模型的数据结构 -请参阅此处的更多示例。当然,它也支持将你的数据序列化为 JSON

您可以通过两种方式使 Jackson Scala 变得友好 AFAIK:

  • 使用此处找到的 Scala 模块:Jackson Scala 模块。这会将 JSON 数据映射到 Scala 特定的数据结构(自动处理案例类、将空值转换为选项等)

  • 使用Jerkson - 这是 Jackson 的包装库。它还用于处理 Play Framework 中的 JSON

就个人而言,我使用 Jackson 和 Scala 模块将我的案例类序列化/反序列化为 JSON 并获得出色的结果 - 所以我绝对推荐它。

于 2013-03-21T15:37:56.557 回答