Query string을 Decode 하는 소스입니다.
HTTP 나 URL 관련 처리 하실 때 필 수 입니다.
Objective C를 사용하실 경우에는 다음과 같이 하면 됩니다.
// for Query String format
NSString *tempRequestBody = [[[NSString alloc] initWithData:contentdata encoding:NSUTF8StringEncoding] autorelease];
requestBody = [[NSString alloc] initWithString:[tempRequestBody stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
하지만 C를 사용하신다면 아래 코드를 사용하세요.
#include <stdlib.h>
char* decode_query (char* str)
{
char* in = str;
char* out = str;
char c = 0;
char decode_buffer[5] = { '0', 'x', 0, 0, 0 };
while ((c = *in++)) {
if (c == '%' && *in && *(in + 1)) {
decode_buffer[2] = *in++;
decode_buffer[3] = *in++;
c = char(strtod(decode_buffer, (char**) NULL));
} else if (c == '+')
c = ' ';
*out++ = c;
}
*out = 0;
return str;
}