テキストファイル(URLで利用可能)で検索しようとしていますが、緯度、経度、その他の情報がカンマで区切られています。 私は、アプリでユーザーの選択した緯度に最も近い緯度経度を検索する必要があります。 コードはそのファイルを読み込み、検索するために行われますが、完全には機能しません。 私に教えてください、私はこのような状況でどのように接近すべきですか? 1)ファイルはリアルタイムで更新されるため、ユーザーが場所を選択して情報を取得するたびにファイルを読み込む必要があります。 2)次に、ユーザーが選択した緯度経度に最も近い緯度経度を検索します。iOSアプリケーションのサーバー上のテキストファイルから緯度と経度の範囲で検索
NSDictionaryのデータ行き方: -
(
{
"altitude_m" = "90.0";
engName = “Station 1”;
grkName = "\U039d\U03ad\U03b1 \U039c\U03ac\U03ba\U03c1\U03b7 \U0391\U03c4\U03c4\U03b9\U03ba\U03ae\U03c2";
"humidity_P" = "50.0";
lat = "38.058873";
"local_time" = "16:20";
lon = "23.976741";
"pressure_hPA" = "1019.9";
"rain_mm" = "0.0";
"tem_C" = "17.2";
"wind_Gusts_khm" = "51.5";
"wind_degrees" = "22.5";
"wind_kmh" = "25.7";
}
{
"altitude_m" = "90.0";
engName = “Station 2”;
grkName = "\U039d\U03ad\U03b1 \U039c\U03ac\U03ba\U03c1\U03b7 \U0391\U03c4\U03c4\U03b9\U03ba\U03ae\U03c2";
"humidity_P" = "50.0";
lat = "38.048873";
"local_time" = "16:20";
lon = "23.876741";
"pressure_hPA" = "1019.9";
"rain_mm" = "0.0";
"tem_C" = "17.2";
"wind_Gusts_khm" = "51.5";
"wind_degrees" = "22.5";
"wind_kmh" = "25.7";
}
{
"altitude_m" = "90.0";
engName = “Station 3”;
grkName = "\U039d\U03ad\U03b1 \U039c\U03ac\U03ba\U03c1\U03b7 \U0391\U03c4\U03c4\U03b9\U03ba\U03ae\U03c2";
"humidity_P" = "50.0";
lat = "38.059873";
"local_time" = "16:20";
lon = "23.986741";
"pressure_hPA" = "1019.9";
"rain_mm" = "0.0";
"tem_C" = "17.2";
"wind_Gusts_khm" = "51.5";
"wind_degrees" = "22.5";
"wind_kmh" = "25.7";
}
//マッチング機能: - ERROR *終了キャッチされない例外が原因アプリ 'NSInvalidArgumentException'、理由を取得
-(void)matchLAtLongNow: (NSString *)latitude :(NSString *)longitude {
CLLocationCoordinate2D pinlocation;
pinlocation.latitude = [latitude doubleValue];
pinlocation.longitude = [longitude doubleValue];
float minLat = pinlocation.latitude - (searchDistance/69);
float maxLat = pinlocation.latitude + (searchDistance/69);
float minLon = pinlocation.longitude - searchDistance/fabs(cos(deg2rad(pinlocation.latitude))*69);
float maxLon = pinlocation.longitude + searchDistance/fabs(cos(deg2rad(pinlocation.longitude))*69);
NSPredicate *predicate = [NSPredicate predicateWithFormat:
@"lat <= %f AND lat >= %f AND lon <= %f AND lon >= %f",
maxLat, minLat, maxLon, minLon];
MatchedTxtArray = [myArray filteredArrayUsingPredicate:applePred];
}
//:「 - [__NSCFNumber _fastCStringContents]:インスタンスに送信された認識できないセレクタ0x175426460 ' *ファーストスローコールスタック:
返信いただきありがとうございます。私は弦があることを確認した。 –