【发布时间】:2021-12-28 06:50:30
【问题描述】:
我有一堆 csv 文件,其中包含不同类型的数据条目。现在我想以游戏可读的方式加载这些 csv 文件,比如条目列表。并在性能和内存使用之间保持平衡。 我想出了几种方法:
- 在运行时解析所需的 csv 文件。理想情况下,当解析不会引入延迟时,在需要它之前解析 csv 数据,例如在场景加载期间。
- 我可以离线解析它们,并生成如下文件:
public class ContentOfSomeCsv {
private static data;
public static LoadData(){
data = new EntryType[] {
entry1,
entry2,
...
entryn,
}
}
}
- 将 csv 文件导入运行时数据库,从数据库中加载所需条目并在需要时进行缓存。
我已经尝试了第一种方法,它的解析器实现并不那么智能。场景加载需要更长的时间。所以我想切换到方法 2 或 3。但我不确定这些方法是否有效。
我想知道何时应该使用上述方法以及它们是否有任何问题。或者有没有更好的方法来导入 csv 文件?
【问题讨论】: