У меня есть очень большой и сложный файл данных (.txt, см. Ниже фрагмент) около 10 МБ и хотелось бы знать, как лучше его сохранить и получить доступ к нему позже. Мое приложение в настоящее время использует основные данные для хранения других объектов, но я не вижу, как я могу создать сущность из этого типа файла данных из-за его сложности.Предложения для обработки сложного + большого файла данных
Этот файл разделен следующим образом: Первая строка каждой основной секции начинается с буквы A | и означает, что будет определена новая «воздушная трасса». Затем, это имя, поэтому в приведенном ниже примере у нас есть воздушная трасса с именем V320 и другая по имени V321. В следующих строках мы имеем важные данные, «точки»/путевые точки, которые составляют эту воздушную трассу. Каждый из них имеет имя и координаты. Итак, первый из них - PLN на 45.63N и -84.66W (координаты). Затем оттуда следующий LORIW на 45.35N и -84.92W, от LORIW мы идем к IROTO и т. Д.
ПРИМЕЧАНИЕ: Может быть две, три, а может быть, 4 дыхательные пути с одинаковыми Например, «имя», например, V320, имеет 3 ... но каждый из них находится в собственной части карты.
Другие значения не имеют значения, например числа после пары координат.
По сути, мне нужно все это, чтобы затем рисовать линии на моей карте (GMSPolyLine с использованием SDK карты Google), которая проходит через все эти точки для каждой воздушной трассы, а затем для создания GMSMarkers (google version of 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
.....
Я уже включают в себя базу данных SQLite по умолчанию в моем приложении пачке быть скопированы к документам на первом запуске, ускоряет вещи. Тем не менее, я все еще неловко описываю, как писать этот парсер ... Еще относительно новый для этого вида работы в Obj C. – m179
Это действительно просто. См. Мое редактирование выше. – Mundi
Спасибо за фрагмент кода. Хорошо, теперь я понимаю, как обрабатывать файл, но какой тип объектов я мог бы создать в Core Data xcdatamodel? Он не был бы массивом, который я храню в каждой сущности «воздушной трассы», содержащей все путевые точки? – m179