Я видел несколько сообщений о том, как преобразовать и сделать шестнадцатеричную строку, но проблема, с которой я сталкиваюсь, заключается в записи в файл. Я знаю, как создать то, что я хочу, в виде строки 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, но не могу понять, как сохранить то, что у меня есть выше, и какую кодировку я могу использовать, чтобы записать это как шестнадцатеричное кодирование.
Надеюсь, это имеет смысл.