1

XML ファイルから 64 ビット データを確実に byte[] に取得し、それを文字列と比較するにはどうすればよいですか? 空白が原因でアサートが失敗しているように見えるため、次のコードは失敗します。目標は、アサートが合格することです。

ある時点で byte[] の形式にすることが重要ですが、文字列を介した比較ではないことに注意してください。

<Contents>VGVzdGluZyBURSBzZXNzaW9uIGNvbnRhaW5pbmcgQ29tcGxldGUgUGVyc29uIEEgYW5kIENvbXBs
                ZXRlIEVxdWlwbWVudCBCLg0KDQpUZXN0IFRlc3QNCg0KUmVmZXJlbmNlcyBDb21wbGV0ZSBQbGFj
                ZSBB
            </Contents>

byte[] byteData = document.Contents.text()
assert 'VGVzdGluZyBURSBzZXNzaW9uIGNvbnRhaW5pbmcgQ29tcGxldGUgUGVyc29uIEEgYW5kIENvbXBs'+
                'ZXRlIEVxdWlwbWVudCBCLg0KDQpUZXN0IFRlc3QNCg0KUmVmZXJlbmNlcyBDb21wbGV0ZSBQbGFj'+
                'ZSBB' == new String(byteData)
4

1 に答える 1

1

Base 64データは、URLに対応するためのASCIIへのテキストの特別なエンコードです(歴史的に)

以下のコメントのおかげで編集、実際にはbase64はデータをエンコードしてメールで送信することでした

データからテキストを抽出するには、次のようにします。

new String(
'VGVzdGluZyBURSBzZXNzaW9uIGNvbnRhaW5pbmcgQ29tcGxldGUgUGVyc29uIEEgYW5kIENvbXBsZXRlIEVxdWlwbWVudCBCLg0KDQpUZXN0IFRlc3QNCg0KUmVmZXJlbmNlcyBDb21wbGV0ZSBQbGFjZSBB')
.decodeBase64()
)

結果は「完全な人物Aと完全な機器Bを含むession」で始まります。

http://mrhaki.blogspot.fr/2009/11/groovy-goodness-base64-encoding.htmlから

于 2012-05-11T06:35:19.760 に答える