Joey Erdogan
Joey Erdogan

Reputation: 184

InterSystems Caché Base64 XML Decode

In Intersystem Cache i export some GLOBALs using

$system.OBJ.Export("GCL.GLB", "C:\GCL.xml")

Now there is a field that is BASE64 encoded, for example the following row:

<Node><Sub>2</Sub>
<DataBase64>AgEDATECAQgBU2luZ2xlBATD+QQEkH4EBCD9BAQcAgIEBQE2RE4CAQIBAgECAQIBYwEJAWFmd2V6
aWcCASoBX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwIBFQFIb2dlIEhv
bmRzdHJhYXQgMTE1EwE3NDEzIENFLCBERVZFTlRFUgIBBQExQVMFATVBQwYBMzhHQg0BNjM4ODEs
MzU4NjM=
</DataBase64>
</Node>

When i decode the base64 data in UTF-8 i do not get all data, i heard that it needs to be decoded in IBM437 but then i still miss the first 3 fields which should be 3 numbers with a length of 5

Does someone know which encoding is right or how i can see what encoding i need for this?

Thanks

Upvotes: 2

Views: 460

Answers (1)

DAiMor
DAiMor

Reputation: 3205

I don't see any issues with this Base64, you have data in $LB format there.

USER>s b64="AgEDATECAQgBU2luZ2xlBATD+QQEkH4EBCD9BAQcAgIEBQE2RE4CAQIBAgECAQIBYwEJAWFmd2V6aWcCASoBX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwIBFQFIb2dlIEhvbmRzdHJhYXQgMTE1EwE3NDEzIENFLCBERVZFTlRFUgIBBQExQVMFATVBQwYBMzhHQg0BNjM4ODEsMzU4NjM="

USER>s data=$system.Encryption.Base64Decode(b64)                                 

USER>zw data                                                                    
data=$lb("","1","","Single",63939,32400,64800,540,0,"6DN","","","","","",$lb("afwezig","","________________________________________","","Hoge Hondstraat 115","7413 CE, DEVENTER",""),"1AS","5AC","38GB","63881,35863")

Upvotes: 1

Related Questions