To do HTML/XML entity encoding, you can use a CFMutableString function:
NSString *result = .....;
CFStringTransform((CFMutableStringRef)result, NULL, kCFStringTransformToXMLHex, false);
By setting the last parameter of CFStringTransform to true, it should work for decoding (hex) entities as well.