【发布时间】:2014-10-04 21:01:38
【问题描述】:
我有一个大约 10MB 的非常大且复杂的数据文件(.txt,请参见下面的 sn-p),我想知道存储它的最佳方式并在以后访问它。 我的应用目前使用核心数据来存储其他实体,但由于其复杂性,我不知道如何从这种类型的数据文件创建实体。
此文件分为以下几部分: 每个主要部分的第一行以 A| 开头并且意味着要定义一个新的“气道”。然后,是它的名字,所以在下面的例子中,我们有一个名为 V320 的气道和另一个名为 V321 的气道。在以下几行中,我们有重要的数据,即构成该气道的“点”/航点。每个人都有一个名字和坐标。所以这里的第一个是 45.63N 和 -84.66W(坐标)的 PLN。然后,从那里下一个是 45.35N 和 -84.92W 的 LORIW,从 LORIW 我们去 IROTO,依此类推......
注意:可能有两个、三个甚至 4 个具有相同“名称”的航空公司,例如 V320 有 3 个......但每个都在地图的自己的部分。
坐标对后面的数字等其他值无关。
本质上,我需要所有这些,以便我可以在我的地图上画线(使用谷歌地图 SDK 的 GMSPolyLine),这些线穿过每个航路的所有这些点,然后为每个航路点创建 GMSMarkers(MKAnnotation 的谷歌版本)用户可以点击。 我可以处理地图上的线条/标记的绘制,但对我来说难以想象的部分是对这些数据的操作并使其更易于访问。
如果您有任何问题,请告诉我。
A|V320|20
S|PLN|045630647|-0084664108|LORIW|045352072|-0084924214|0|219|1998
S|LORIW|045352072|-0084924214|IROTO|045188989|-0085075111|219|219|1168
S|IROTO|045188989|-0085075111|ADENO|045030644|-0085220425|219|219|1132
S|ADENO|045030644|-0085220425|TIDDU|044877978|-0085359767|215|215|1090
S|TIDDU|044877978|-0085359767|SKIPR|044831714|-0085401772|215|215|330
.....
A|V321|29
S|PZD|031655206|-0084293100|KUTVE|031866950|-0084451303|0|329|1505
S|KUTVE|031866950|-0084451303|DUVAT|031948772|-0084512695|329|329|582
S|DUVAT|031948772|-0084512695|LUMPP|032041158|-0084582139|329|329|657
S|LUMPP|032041158|-0084582139|PREST|032176375|-0084684117|329|329|963
S|PREST|032176375|-0084684117|CSG|032615253|-0085017631|326|326|3129
S|CSG|032615253|-0085017631|JALVO|032722436|-0085064033|326|339|684
.....
【问题讨论】:
标签: objective-c performance loops core-data bigdata