Comment obtenir le message NSError dans Iphone sdk?

j'ai la méthode dans mon contrôleur de vue comme montré ci-dessous:

- (void)parser:(PaymentTermsLibxmlParser *)parser encounteredError:(NSError *)error
{
    NSLog("error occured");
}

ici, je dois montrer le message D'erreur réel dans le NSError dans mon alerte peut quelqu'un suggérer comment l'obtenir.

j'Espère obtenir une réponse Rapide de vous les gars.

Merci d'avance. Monish.

25
demandé sur kennytm 2010-08-10 11:23:59
la source

4 ответов

utiliser [error localizedDescription] qui affiche le Message d'erreur

24
répondu mkodamati 2015-04-24 19:43:47
la source

normalement vous voudrez utiliser [error localizedDescription] pour obtenir le texte à afficher à l'utilisateur.

Lire la documentation de NSError pour plus d'options.

pour la journalisation simple lors du développement, vous pouvez faire NSLog(@"Error: %@", error). (Qui vous donnera 'localizedDescription' et tout le reste sur votre journal dans Xcode.)

45
répondu jtbandes 2015-08-04 06:26:14
la source

pour ajouter aux réponses courantes, vous pouvez obtenir le message d'échec et la raison de l'échec. Pour ce faire, vous pouvez le faire lorsque présenté avec une NSError:

NSString *message = [NSString stringWithFormat:@"%s\n%@\n%@", __PRETTY_FUNCTION__, displayRegion, [error localizedDescription], [error localizedFailureReason]];

cela créera une chaîne de 3 lignes avec le nom de la méthode où l'erreur s'est produite, la description de l'erreur et une phrase expliquant l'erreur.

si plus d'information est fournie dans le NSError, vous pouvez obtenir le localizedRecoverySuggestion ainsi et ajouter cela au message comme donc:

NSString *message = [NSString stringWithFormat:@"%s\n%@\n%@\n%@", __PRETTY_FUNCTION__, displayRegion, [error localizedDescription], [error localizedFailureReason], [error localizedRecoverySuggestion]];
4
répondu Alex Zavatone 2015-04-24 19:13:20
la source

erreur de l'Utilisateur.userInfo, il retourne dictionnaire ex:

 NSLog(@"%@",error.userInfo);
{
code = 101;
error = "invalid login parameters";
originalError = "Error Domain=NSURLErrorDomain Code=-1011 \"The operation        couldn\U2019t be completed. (NSURLErrorDomain error -1011.)\"";
temporary = 0;
}
1
répondu Baljeet Singh 2015-04-15 12:30:52
la source

Autres questions sur