我正在尝试将NSString
转换为NSMutableData
而不使用encoding
。我怎么能做到这一点?
答案 0 :(得分:1)
这个怎么样?
NSString *str = @"grazz";
NSMutableData *data1 = [[str dataUsingEncoding:NSUTF8StringEncoding] mutableCopy];
NSMutableData *data2 = [NSMutableData dataWithBytes:[str UTF8String] length:[str length]];
ps:我不确定“没有编码”,你的意思是什么?
答案 1 :(得分:1)
正如此处所指出:NSString value to NSData,您可以使用dataUsingEncoding
将NSString
转换为NSData
。
要将其放在NSMutableData
容器中,只需制作一个mutableCopy
,就像这样:
NSString *string = @"MyString";
NSMutableData *mutableData = [[string dataUsingEncoding:NSUTF8StringEncoding] mutableCopy];
至于“不使用encoding
”这样做,字符串将始终被编码。即使您没有设置任何特定的encoding
,该字符串仍将被编码。我认为上面的解决方案可以解决您的问题。
答案 2 :(得分:0)
为什么这个问题被贬低了?
NSString* str = @"teststring";
NSData* data = [str dataUsingEncoding:NSUTF8StringEncoding];
NSMutableData *yourdata = [data mutableCopy];
首先,您必须转换为NSData
,然后转换为NSMutableData
。据我所知,我们无法从NSMutableData
直接转换为NSString
。