Ich versuche, die folgende Zeichenfolge von Base64 ohne jeden Ausgang zu dekodieren. Es gibt immer Null zurück. Ich habe versucht, NSDataBase64DecodingOptions in IgnoreUnknowCharanters zu ändern, aber es funktioniert auch nicht. Ich habe auch versucht, die Polsterung zu entfernen, wie diese Antwort sagt swift base64 decoding returns nil, aber die Länge meiner Zeichenfolge ist durch 4 teilbar, so dass es nicht funktioniert.Swift 2 Decode base64 immer zurück null
String
PY5ehymWfQKExWxPyOImGiQkxNjyuBREmOXtQdePVpuH9PFzizaO+WTuM1sLouTQPz5UO7csloC9GjOFqkq4POmlB9d3mMJGLB2pVCNs8t9EejOcjV4fRHaITkmfMfVbizCnTvHGBwLWXjLc7gwyhu2+S9qw0NXc5jw6EdEk+zuesrdwLgqws0hDqFSoVw57+CnvUmgXwtNfKP4p64mJ9inH/0xAMarCc5N4Wjz/zmlTyd2PoDFUC/iLdZ7csau7X2M=
Option 1
if let decodedData = NSData(base64EncodedString: base64String, options: NSDataBase64DecodingOptions.IgnoreUnknownCharacters),
let decodedString = NSString(data: decodedData, encoding: NSUTF8StringEncoding) {
print(decodedString) // foo
}
Option 2
if let decodedData = NSData(base64EncodedString: pnpData, options: NSDataBase64DecodingOptions.init(rawValue: 0)),
let decodedString = NSString(data: decodedData, encoding: NSUTF8StringEncoding) {
print(decodedString) // foo
}
Hoffe ihr könnt mir helfen. Vielen Dank!!
Welches Bit gibt nil, die Daten oder die Zeichenfolge aus den Daten zurück? Woher kommt deine Base64-Saite? – Wain
Ich gehe davon aus, dass die Base64-Decodierung funktioniert, aber die decodierten Daten stellen keine gültige UTF-8-Sequenz dar, so dass 'NSString (data: decodedData ...)' fehlschlägt. Welches Ergebnis erwartest du? –
@MartinR Es steht fest, dass es sich um eine verschlüsselte Zeichenfolge handelt, also muss ich sie nach der Dekodierung mit AES entschlüsseln. –