解码在android中编码的base64字符串

时间:2017-08-18 16:46:11

标签: android ios objective-c base64

我有一个字符串,我需要从ios解码,但在Android中使用base64加密。

String encoded = (Base64.encodeToString(vals, Base64.DEFAULT));

我试图在Objective C中解码的相同字符串我正在变为零 //在android中编码的stringToDeccode字符串

NSData *decodedData = [[NSData alloc] initWithBase64EncodedString:stringToDeccode options:0];
NSString *decodedString = [[NSString alloc] initWithData:decodedData encoding:NSUTF8StringEncoding];

// decodeString是nil

我使用过这个能够解码的网站的字符串。 https://www.base64decode.org/

让我知道我做错了什么

2 个答案:

答案 0 :(得分:2)

我认为您的输入文字存在问题。 这是Android代码:

 String encoded = (Base64.encodeToString("IOS Developer".getBytes(), Base64.DEFAULT));

Android编码的文字为SU9TIERldmVsb3Blcg==

iOS代码:

  NSData *decodedData = [[NSData alloc] initWithBase64EncodedString:@"SU9TIERldmVsb3Blcg==" options:0];
  NSString *decodedString = [[NSString alloc] initWithData:decodedData encoding:NSUTF8StringEncoding];
  NSLog(@"%@",decodedString);

答案 1 :(得分:0)

对我而言:

// byteArray:是你的形象

机器人:

String encoded = Base64.encodeToString(byteArray,Base64.DEFAULT);

iOS / Swift 4:

    if let data = Data(base64Encoded: encoded, options: .ignoreUnknownCharacters){
        return UIImage(data: data)

}