Extraire une NSString d'un NSData
UniX
Membre
Salut et bonnes fêtes à tout le monde.
Je récupère un NSData depuis le port série d'un appareil. Je voudrais convertir le NSData en NSString avec initWithData: encoding:
L'encodage est de l'ASCII (c'est marqué dans la doc de l'appareil), mais j'ai du charabia qui resort de l'opération. Alors qu'avec d'autres appareils, pas de problème ....
Quelles sont les solutions possibles ? J'ai enregistré un NSData dans un fichier si quelqu'un est intéressé.
Je récupère un NSData depuis le port série d'un appareil. Je voudrais convertir le NSData en NSString avec initWithData: encoding:
L'encodage est de l'ASCII (c'est marqué dans la doc de l'appareil), mais j'ai du charabia qui resort de l'opération. Alors qu'avec d'autres appareils, pas de problème ....
Quelles sont les solutions possibles ? J'ai enregistré un NSData dans un fichier si quelqu'un est intéressé.
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Pour voir la tronche des données brutes. Si tu connais un minimum le protocole utilisé par ton appareil, tu pourras peut-être reconnaà®tre une trame particulière ou un truc comme ça ?
J'ai essayé plusieurs constante dans la méthode initWithData: encoding:, mais aucune ne me sort de résultat probant. Et puis de toutes façons, il est bien spécifié dans la doc de l'appareil qu'il envoie de l'ASCII.
[tt]
NSData *mesDatas=[NSData init...];
NSString *maString=[[NSString alloc] initWithBytes:[mesDatas bytes] length:[mesDatas length] encoding:NSASCIIStringEncoding];
[/tt]
Sinon, pour avoir la représentation hexa de ton NSData tu peux utiliser la méthode description.