0

次のように、xmlファイルをキャッシュファイルパスに保存しています。

// Determile cache file path
 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
 filePathl = [NSString stringWithFormat:@"%@/%@", [paths objectAtIndex:0],@"list.xml"];   

// Download and write to file
 NSURL *url = [NSURL URLWithString:detail_product_listing_rss];
 NSData *urlData = [NSData dataWithContentsOfURL:url];
 [urlData writeToFile:filePathl atomically:YES];

しかし、このコードを使用すると、最近使用したxmlファイルのデータを取得できます。オフラインで使用するために複数のxmlファイルを保存する方法を教えてください。

4

1 に答える 1

1

xmlを別の名前で保存する必要があります。それ以外の場合は、古いxmlを上書きします。

この目的のために整数値を保持します。アプリの再起動後にこれが必要な場合は、NSUserDefaultsにも保持します。

 int posValue = [[[NSUserDefaults standardUserDefaults] objectForKey:@"lastXml"] intValue];

 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
 filePathl = [NSString stringWithFormat:@"%@/list_%d.xml", [paths objectAtIndex:0],posValue];   

 NSURL *url = [NSURL URLWithString:detail_product_listing_rss];
 NSData *urlData = [NSData dataWithContentsOfURL:url];
 [urlData writeToFile:filePathl atomically:YES];

 [[NSUserDefaults standardUserDefaults] setObject:[NSNumber numberWithInt:posValue+1] forKey:@"lastXml"];
于 2012-12-20T17:13:53.163 に答える