Ios Xcode中的解码和编码
我是Ios新手,。在我的应用程序中,我从服务器接收数据,我必须解码接收到的数据,我尝试了以下示例代码Ios Xcode中的解码和编码,ios,nsstring,base64,decode,Ios,Nsstring,Base64,Decode,我是Ios新手,。在我的应用程序中,我从服务器接收数据,我必须解码接收到的数据,我尝试了以下示例代码 NSData * dt = [Base64 decode:@"SGVsbG8gV29ybGQ="]; NSString * actualString = [[NSString alloc] initWithData:dt encoding:NSUTF8StringEncoding]; NSLog(@"%@",ac
NSData * dt = [Base64 decode:@"SGVsbG8gV29ybGQ="];
NSString * actualString = [[NSString alloc] initWithData:dt
encoding:NSUTF8StringEncoding];
NSLog(@"%@",actualString);
返回值“Hello World”
但是如果我尝试使用数据,我通过xml从服务器获取数据
NSData * dt = [Base64 decode:@"QEjbHvzPjk+YuLDVPUJuEA=="];
NSString * actualString = [[NSString alloc] initWithData:dt
encoding:NSUTF8StringEncoding];
NSLog(@"%@",actualString);
它返回(null),并且无法解码,“+”符号是否存在问题,我是否必须在服务器端编码没有“+”符号的数据,如果没有必要,请告诉我实现它的正确方法。谢谢。当您编码时:
NSData*dt=[Base64 decode:@“QEjbHvzPjk+YuLDVPUJuEA=”代码>
actualString
为零,因为您的dt
数据不表示编码的有效数据
我认为关键问题在于你的@“QEjbHvzPjk+YuLDVPUJuEA==”
是错误的谢谢你的回复,我将尝试更改format@Guo这是几天前提出的一个类似问题。根据OP,在这个问题中涉及AES加密。当@“QEjbHvzPjk+YuLDVPUJuEA==”字符串被Base64解码为数据时,它产生的数据是AES块大小的倍数。看@Zaph,噢~~~很抱歉我发现这是一个重复的问题。是的,我看到字符串以“==”结尾,它可能由AES128加密(可能),因此OP应该首先用AES密钥解密字符串(@“QEjbHvzPjk+YuLDVPUJuEA==”),然后用base64解码。的副本