我看过几篇关于如何转换和生成十六进制字符串的文章,但我遇到的问题是在写入文件时。我知道如何创建一个具有适当间距的utf8字符串。
5350 4401 0000 0002 0500 0000 0000 0000
1540 0016 4000 5a80 005a 7000 5abc 0056
b000 5680 0056 8001 7fa0 017f a001 5fe0
0157 f00d 56bc 0d56 a001 56a0 0156 a003
56bc 00c0 c000 0000 8100 0001 00
var fileURLS = [URL]()
let fileData = getCode().data(using: String.Encoding.utf8)
var fileName = "\(self.drawing.getDrawingName()).\(self.getCodeExtension())"
fileName = fileName.components(separatedBy: CharacterSet.illegalCharacters).joined(separator: "")
let localDir = NSTemporaryDirectory()
let localPath = localDir.appendingFormat("%@", fileName)
fileURLS.append(URL(fileURLWithPath: localPath))
try? fileData?.write(to: URL(fileURLWithPath: localPath), options: .atomic)
当我打开文件,我试图复制它说,它是77字节的十六进制编码,但当我试图创建相同的使用Swift它出来更大的utf8编码。现在我知道我在使用UTF8,但我不知道如何保留我上面的内容,以及我可以使用什么编码来将它写成十六进制编码。
希望这是有道理的。