Oreyonで使ったコードはこんな感じです。元ネタあるような気がするので思い出したら追記 #include <iconv.h> #include <errno.h> #define __iconvBufferLength 1024 +(NSString *)stringWithData:(NSData *)data iconvEncoding:(NSString *)encodingString { iconv_t descriptor = iconv_open("UTF-16//IGNORE", [encodingString UTF8String]); size_t inbytesleft = [data length]; char* inbuf = (char*)[data bytes]; size_t outbytesleft; char* outbuf = malloc(__ic