これは単なるデバッグ目的のためであれば、私は最も簡単な方法があると思う:
let myGZipNSData = myGZipData as! NSData //I wrote a "!" just for the sample)
print("myGZipNSData: \(myGZipNSData)")
それべきでは出力:
myGZipNSData: <5b226d79 41727261 7956616c 75653022 2c226d79 41727261 7956616c 75653122 5d>
これは「<hexValue>
を印刷NSData
の-description
方法に依存しています" -description
に頼ることはほとんどありません(はい、Appleは次のリリースで-description
の動作を変更する可能性があります。別のクラスで発生しました)。前回とHow to convert Data to hex string in swiftあなたはあなたに同じ結果を得る(ほとんど、より少ないスペース、および無<
/>
):ほぼ同じ結果を得るために
その他の方法(安全な)は、あなたがこの質問を確認することができます。
その他の方法:ベース64 使用Data
のbase64EncodedString()
方法:
let base64Str = myGZipData?.base64EncodedString()
print("base64Str: \(base64Str!)")
出力:
base64Str: WyJteUFycmF5VmFsdWUwIiwibXlBcnJheVZhbHVlMSJd
次に、他の方法があるはず: の間(中間値と配列の表現を持ちます0/255)、それはデバッグ目的のためだと思われるので、私があなたに与えた "現在のソリューションを再現する"(作業/速い実装)ができるかどうかを確認し、サーバ開発者に何h e /彼女は自分の側で比較することもできます。
注:このサンプルの目的のために 、myGZipData
は、このように構築される:
let array = ["myArrayValue0", "myArrayValue1"]
let myGZipData = try? JSONSerialization.data(withJSONObject: array, options:[])
は、それは本当にGZipDataはないが、ゴールはすぐに「十分に大きい」Data
オブジェクトを持っていることでした。
'String:(記述:(myGZipData as NSData))'?またはbase64エンコーディング?またはhttps://stackoverflow.com/questions/39075043/how-to-convert-data-to-hex-string-in-swift? – Larme
@Larme、ありがとう、答えが正しい?私はそれをupvoteよ –