【发布时间】:2015-11-30 05:55:24
【问题描述】:
如果我将 NSData 转换为字符串,像这样
NSString *someString = [NSString stringWithFormat:@"%@", hashedData];
如何将 someString 转换回 hashedData?
例如在下面的代码中
NSString *string = @"This is a string";
NSData *data1 = [string dataUsingEncoding:NSUTF8StringEncoding];
NSLog(@"data: %@",data1);
NSString *dataString = [NSString stringWithFormat:@"%@",data1];
NSData* data2 = [dataString dataUsingEncoding:NSUTF8StringEncoding];
NSLog(@"data2: %@",data2);
我得到以下输出
data1: <54686973 20697320 61207374 72696e67>
data2: <3c353436 38363937 33203230 36393733 32302036 31323037 33373420 37323639 36653637 3e>
我想要的是data2应该和data1一样。我的意思是将 dataString 转换回原来的 hashedData。
【问题讨论】:
-
不是重复的。请查看更新。
-
dataString显然与string不同。打印它的描述是不一样的。您正在那里寻找方法:stackoverflow.com/a/28295543/1801544 ? (找不到原始版本,我发布了我的“版本”)。 -
看我的回答可能对你有帮助..
-
到底为什么要对字符串进行双重编码?
标签: ios objective-c nsstring nsdata