2010-08-12 13 views
0

Je veux poser une question sur l'objectif C. Je veux télécharger un fichier .vcf à partir d'un serveur (serveur CardDav) dans l'application iPhone. Après avoir lu l'API et la bibliothèque du développeur Apple, j'ai trouvé que je devrais utiliser le NSURLConnection Class. Cependant, je ne sais pas comment démarrer le programme.Comment télécharger un fichier en utilisant NSURLConnection?

Par conséquent, je veux demander à quelqu'un peut-il me donner un tutoriel ou une référence de site Web (je veux dire l'exemple) pour moi? Merci beaucoup.

Répondre

2

Vous pouvez utiliser cette méthode:

- (id)initWithRequest:(NSURLRequest *)request delegate:(id)delegate startImmediately:(BOOL)startImmediately 

More here et le délégué:

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response 

- (void)connectionDidFinishLoading:(NSURLConnection *)connection 

Le délégué est un objet qui peut répondre à deux méthodes ci-dessus pour recevoir les données. Si vous voulez faire asynchrone, vous devez utiliser délégué. Si vous ne le faites pas, vous pouvez simplement faire:

+ (NSData *)sendSynchronousRequest:(NSURLRequest *)request returningResponse:(NSURLResponse **)response error:(NSError **)error 

[More here][2] 

Ou vous pouvez simplement faire comme cela pour certaines données:

+ (id)dataWithContentsOfURL:(NSURL *)aURL 

More here

+0

Merci pour votre réponse. Je voudrais poser une autre question, est-ce presque la même chose pour iPhone pour télécharger le fichier depuis le serveur? (par exemple télécharger le fichier .vcf depuis CardDav et .iCal depuis CalDav ou télécharger simplement un fichier texte depuis un serveur web) – Questions

+0

Je pense que c'est la même chose. C'est juste des données, la seule différence que vous pourriez avoir besoin est de savoir comment traduire ces données à une donnée appropriée (texte ou .vcf) – vodkhang

+0

merci pour votre réponse. C'est très utile. – Questions

Questions connexes