gpt4 book ai didi

swift - 发出 Base64 解码特定字符串

转载 作者:行者123 更新时间:2023-11-30 13:56:50 30 4
gpt4 key购买 nike

我有以下 base64 编码的字符串,我需要使用 Swift 对它进行 base64 解码:

KimHser2RvFf9RPjajWO4K/odT51hTlISwMKNIfPUC+gXYZKNjGDCvHEom++6liXNq6PkStnpzMKBsTk+tIpJA==

那里没有换行符,StackOverflow 只是换行字符串。我尝试了多种方法来对其进行 Base64 解码。我确实收到了 NSData 形式的结果,但是,当我尝试将 NSData 转换为 NSString 对象时,结果始终为 nil。如果我将编码更改为 ASCII 或 UTF16,我会收到结果,因此我假设 Swift 无法识别 UTF8 格式的 NSData。但是,如果我在 C# 中对同一字符串进行 Base 64 解码,则 UTF8 可以工作,并且 Base64 解码也可以工作。因此,我确信由于缺乏 Swift 经验,我错过了一步。

这是我最近的尝试:

import Foundation

extension String {
// MARK: Base64 encode
func base64Encode() -> String {
let data : NSData = self.dataUsingEncoding(NSUTF8StringEncoding)!
return data.base64EncodedStringWithOptions(NSDataBase64EncodingOptions(rawValue: 0))
}

// MARK: Base64 decode
func base64Decode() -> String {
let decodedData = NSData(base64EncodedString: self, options: NSDataBase64DecodingOptions(rawValue: 0))
let decodedString = NSString(data: decodedData!, encoding: NSUTF8StringEncoding)
return decodedString as! String
}
}

我确信这很容易。然而,这是我在 Swift 中的第一个应用程序,我仍在学习中。

非常感谢任何帮助。

谢谢!

最佳答案

您的“base64”字符串无效。如果你尝试在 some online decoder 中解码它它失败。但你的代码是有效的:)
更正
如果编码的原始数据不是字符串数据,那么我同意@Martin R

关于swift - 发出 Base64 解码特定字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33532282/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com