私のアプリケーションでは、NSStringをHexStringに変換しています。しかし、常に固定サイズ (16 バイト) の 16 進文字列が必要です。たとえば、16 進文字列の長さが 15 バイトの場合、16 バイトにしたいのです。16進文字列の先頭にゼロを追加できることはわかっていますが、それを追加する方法は、NSStringに変換し直すときに「0」を追加するだけでは機能しないためです。
質問する
2238 次
1 に答える
1
このコードを試すことができます....
+ (NSString *) stringToHex:(NSString *)str
{
NSUInteger len = [str length];
unichar *chars = malloc(len * sizeof(unichar));
[str getCharacters:chars];
NSMutableString *hexString = [[NSMutableString alloc] init];
for(NSUInteger i = 0; i < len; i++ )
{
// [hexString [NSString stringWithFormat:@"%02x", chars[i]]]; //previous input
[hexString appendFormat:@"%02x", chars[i]]; //EDITED PER COMMENT BELOW
}
free(chars);
return [hexString autorelease];
}
これがお役に立てば幸いです。幸せなコーディング。
于 2012-11-22T06:17:05.560 に答える