0

I want to convert base 64 string to byte array in classic asp . The code to decode base 64 string to byte array is as follows :

Function Base64Decode(ByVal vCode)
        Dim oXML, oNode
        Set oXML = CreateObject("Msxml2.DOMDocument.3.0")
        Set oNode = oXML.CreateElement("base64")
        oNode.dataType = "bin.base64"
        oNode.text = vCode
        Base64Decode = oNode.nodeTypedValue
        Set oNode = Nothing
        Set oXML = Nothing
    End Function  

When I call this function with a small string , then this function works fine . But when I call this function with a large string like as the following :

Dim simpleString
 simpleString = "MjY1MDEgICAgICAgICAgIAUNAwMAVBIZPXd3d3d3d3d3d3d3d3d3d3d3d3d3d3cHADk6Ojo6 Ojh3d3d3d3d3dw8KATsAOzo5OTg4d3d3d3d3Dg0IAgEAOzo4Nzc4OHd3d3cODgwIBQQBOjk5 ODY2Nzd3d3cNDQwKCAcDADs6OTc1NjZ3d3cNDQwKCQcEAgA7Ozs4NTY5d3cODQ0KCQcFAgA7 AAA7OTg7d3cPDQwKCQcGAwEAAAAAADs6d3cODAsKCAcGBQIAAAABAgEAd3cODQwJCAcHBgQC AQECAQAAd3cNDQwJCQkIBgQCAQEBADs7d3cPDQ0MCQcFBQQCAAABADs6d3cQDQ0MCQcGBQQC ADs7Ozo4d3cODQsLCgkIBwUDADs5Ojo2d3cLDAwMCwoJCAYDADs6Ojo2d3cMCwwNDQwKCggF AgA7Ozo3d3cNDg4ODg4NCwkHBQI7Ojg3d3cODg4ODg4ODAoIBgM7OTc3d3cODw4NDg4ODg0K BwQ5NzQyd3cODw8QEBAQEA8MCAQ6NTIwd3cODxITFBUUEhIRDQk7NDIwd3cPERYXGBoZFxcX FRMxMjEtd3cRFBkbHB4eHh0dHR8nLS8ud3d3d3d3d3d3d3d3d3d3d3d3d0dcHUk0cmEXfDNP gB4PGR4RGQxpIhFiCUlobhpURScuTmh4gl4iJXSENBxtgDeFcnM/YGt8eW1lOCGGVywAAAAA AAAAAAAMFRweJi4ySFNaWmVtdnx+gomMk5egp6evtLa3urwYGyEtP1JTWVtcXWpzdnh+f3+C hoaOkZqcnaGkpamtAAAAAAAAAAAADAAXAQsBDBYAChcAFhQJCRUIFRcVCRcVBwMDCBMSAAwN DAwLDBcKAAwLCQwBCg0MAAkLDAEBDAAJCQ4JBwAAAAAAAAAAAAMASBIZNXd3d3d3d3d3d3d3 d3d3d3d3d3d3d3d3d3cCAzs1MTAud3d3d3d3d3d3d3c7Ojg0MS8tLC13d3d3d3d3ADs5ODYz MS4tLCl3d3d3d3cCADk3NjUzMS4tKygnd3d3dwUDADg2NTQyLy4sKicld3d3BQUDATo2NDMy MC4sKCUkd3d3BQUDATo3NDIxLy4qJiUmd3d3BgUDADo3NDEuKyooJyYmd3cLCAYFAwA3Mi8s KScnJSQld3cNCQgHBQE0Ly0qKCYlIiIkd3cQDAsKBgAzLSopJiUkJCMld3cQDw4NCToxKign JCIjJCUld3cSEhEQDTorJSUlIyIiJCYld3cWFhUTEh4nJCMjIiIiIyYmd3ccHBwbGiAjIiIi IiIjIiQld3chICAgICAhIiIiIiMkIyMkd3clIyIiIyMjIyQkJCQmJSR3d3cnJiUlJignJycn JygqJyR3d3cpKiopKiwsKywrKywsK3d3d3ctLS0uLjAwMDEwMC8uLXd3d3cxMTIyMjMzNDQ0 MzQ0d3d3d3d3NDQ0NDQ1NTY2NjZ3d3d3d3d3NTQ0NTY3Nzc2Nzd3d3d3d3d3d3d3d3d3d3d3 d3d3d3d3d2RfNzRaWnMgQT8zSYQgfmU6HCopMz1dDR0jCy4eHkUpbIYtcjd0I3RfCXcLdGJY Uz1lFVM7AAAAAAAAAAAAAAAAAAAAAAATHCAwMzs9PUNKTFBTVFZYXF1mbm5ucHV6fYGJipyg qBg1XGRrbHZ8goWJiouOk5+kpaaougAAAAAAAAAAAAAAAAAAAAAAAg4BDA4CEBcNAQwOEAsG EAwJFhUIDxEHBhISEREQDw0PERcFAhEHEQUFBREREREPDg4PDg0AAAAAAAAAAAAAAAAAAAAA AAMAPhIZLXd3d3d3d3d3d3d3d3d3d3d3d3d3d3csKikoJiMkKHd3d3d3d3d3dzEtKignJSEh JSR3d3d3d3d3MS8rKCcmJSMiIyMjd3d3d3cxLysoJiQkJSYlJCQkd3d3d3cxLSgmJCMjJCUl JCUkd3d3d3ctKiclJCMjIyMkJSQjd3d3d3cqJyYlJCQkJCQjJCMhd3d3d3cpJiUkJCUlJiUk JSQkd3d3d3coJiUlJSUmJyYlJicnd3d3d3cnJSUlJiYoKSUlJycmd3d3d3cmJSUmJycoKyko Kikmd3d3d3cmJSUmKSkpKSkqKykjd3d3d3cnJiYmKSsqKioqLCggd3d3d3coJycoKSstLy4t MCsmd3d3d3coKCgqKiwtLi8wMSwmd3d3d3cpKisrLC0uLi8wLiR3d3d3d3cqLC0t','Li8vMDEy MSR3d3d3d3ctLS4vMTIyMzQ1NTF3d3d3d3cwMDEyNDQzNDY3OwB3d3d3d3czNTQ1Nzc1NTc5 Awl3d3d3d3c4ODc4Ojo5Nzg7AXd3d3d3d3d3Ojo6OwA7OjsCA3d3d3d3d3d3Ojo6Ozs7AAED d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dytQSwtATFYPRUVOYzlXYUVOGjYSO1cxQCdFGlRk N2soS0hnHzNGXyQXOh1HOwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWISY9UVhcZ2dzdXWB hIiWmpuco6amtrm8vjM0RmBkaHh5eoiPkpygqrGytboAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAEBEQDwMQEBAPDg8ODwIPAQ0ODQ0MFwEMAAAQBREQEQQPAxAPDg4MDQ0MDA0AAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAMALxIZF3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3 d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3 d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3 d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dzo5NjQz MS93d3d3d3d3d3cCOzo4NjQyMC8vLnd3d3d3dwUDADk3NTMxLy0tLCp3d3d3CAUDADk3NTMw LiwrKih3d3d3CQYDADk3NTIvLSsqKikod3cMCgcEATo2MzAuLCopKSkpd3cNCwkGATg0MS4s KikoKSkpd3cNDAoHATcyLywqKSgoKCkod3cPDgwIATcxLSspKCcnKCkod3cREQ4KAjUvKykn JycoKCkod3cSEhALBTgvKicnJicoKCkod3cVFBMPCjsuKSgnJiYoKSkod3cWFxYUEDsrKCcm JiYoKSkod3cYGRgYFx4mJicmJicoKiknd3d3d3d3d3d3d3d3d3d3d3d3dytwJUodKBQ0M2Is MURpZSM5Fh8lRzQPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAABgZmt2d3iamqKiqauxZnqOj5aWmaWnuQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAADA8XDRcLFA0MBBcLBAMQFw4ICRcQDAcAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAIxIZFXd3d3d3d3d3d3d3 d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3 d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3 d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3 d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dwQ5MTMyLnd3d3d3d3d3d3d3AQI3MjIx Li93d3d3d3d3d3cBOzo1MzIwLy0rd3d3d3d3dwQDADg1NDMxLy0rd3d3d3d3dwQCOzc1NDMx MC4sK3d3d3d3dwQBOjg2NDIyMC4sKnd3d3d3CQUCOzk2NDIyMC4tK3d3d3d3CggEADk2MzIy MC8vLCl3d3d3CwkGATg1MjEwMC8uKyh3d3d3DgsIAjk0MjAuLS0sKih3d3d3EQ8KAzgzMC4t KystLix3d3d3FBMPBTcxLi0sKystLit3d3d3GBcUCjcwLSsrLCwrKid3d3d3d3d3d3d3d3d3 d3d3d3d3d1FLWCNfSB5vc3RWdXcmK2BeIlVBcwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABhY255f4KEhZKYnJ+lsba7dYWHiIoAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgwOCwICFxAPDwIQEBYJ Dw8MDg0QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="
  Base64Decode(simpleString)

Then I am getting this error :

500 - Internal server error.
There is a problem with the resource you are looking for, and it cannot be displayed.

Why am I getting this error ? How can I remove this error ? Please help me to remove this error .

4
  • Possible duplicate of ASP Classic - convert base64binary string to byte array Commented Dec 15, 2016 at 8:54
  • You need to enable "detailed" errors in IIS and "Send Errors to the Browser" needs to be True, that way you can workout what the error actually is. See Detailed 500 error message, ASP + IIS 7.5. Commented Dec 15, 2016 at 8:57
  • Once you've got the detailed error (by following the above link) edit the question and add it. Commented Dec 15, 2016 at 9:45
  • 2
    simpleString contains ',' so it's not a valid base64 encoded string. try to fix this first. Commented Dec 15, 2016 at 15:49

2 Answers 2

1

Use the method decodeBase64 from this article here.

private function decodeBase64(base64)
  dim DM, EL
  Set DM = CreateObject("Microsoft.XMLDOM")
  ' Create temporary node with Base64 data type
  Set EL = DM.createElement("tmp")
  EL.DataType = "bin.base64"
  ' Set encoded String, get bytes
  EL.Text = base64
  decodeBase64 = EL.NodeTypedValue
end function

'e.g.
decodeBase64(your_base64_string)
Sign up to request clarification or add additional context in comments.

Comments

-4

Please try the code below. It may help you convert base64string to byte array.

byte[] bytes = System.Convert.FromBase64String(simpleString);

2 Comments

I am trying to convert base64 string to byte array in classic asp . The code given by you is in asp.net or in c# .
@RajeshKumarSwain you are correct but this question is not about c# (note the tags on the question).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.