2009-04-14 5 views
0

In objective c Wie funktioniert ein xmlchar-Datentyp? Ich kann anscheinend keine API-Dokumentation finden. Insbesondere meine Erklärung wie folgt aussieht:Wie funktioniert ein objective-c xmlchar-Datentyp

const xmlChar **attributes 

Bin ich das richtig zu klassifizieren, indem er sagte, es ist ein Ziel, c-Datentyp oder ist es spezifisch für Kakao oder C?

Antwort

6

können Sie sehen die Erklärung xmlChar in xmlString.h in libxml2 Bibliothek gefunden als:

typedef unsigned char xmlChar; 

Jetzt für xmlChar to NSString Umwandlung

xmlChar *str = (unsigned char *)"I am to be converted"; 
NSString *convertedString = [NSString stringWithUTF8String:(const char *)str]; 

von NSString to xmlChar Umwandlung;

NSString *str = @"I am to be converted"; 
xmlChar *convertedString = (xmlChar *)[str UTF8String]; 
2

Ich glaube nicht, dass Objective-C irgendeine Art von XMLChar-Datentyp hat. In Cocoa verwenden Sie in der Regel eine NSXMLParser, die nur NSString verwendet. Denken Sie vielleicht an libxml2? In diesem Fall wird es einfach als unsigned char definiert, das ein UTF-8-Oktett darstellt (um dem Compiler zu helfen, Warnungen zu geben, wenn Sie versuchen, es in eine char zu konvertieren). Im Allgemeinen können Sie eine xmlChar * wie eine reguläre char * behandeln, solange Sie daran denken, dass es UTF-8 codiert und nicht im ASCII-Format (also abgeschnitten, kann ungültige Zeichen geben, Vergleichen von Werten, um sie zu sortieren, funktioniert nicht, wenn Sie implementieren länderspezifische Vergleiche usw.).