1

I want to decode the Base64 result of MS-SQL Server in javascript, but I can't find a true solution. I know SQL Server uses UCS-2 encoding, and I have to use the same encoding to decode in javascript.

For example, for MwZEBicGRQY= the encoded result must be سلام.

Do you have any solution to decode that using javascript?

tvahid
  • 210
  • 1
  • 9

1 Answers1

3

You can first decode your base64 data into an Uint8Array, and then read the resulting data as UTF-16:

const base64_string = "MwZEBicGRQY";
// from https://stackoverflow.com/a/41106346/3702797
// may not be bullet-proof
const arr = Uint8Array.from(atob(base64_string), c => c.charCodeAt(0))
const decoded = new TextDecoder("UTF-16").decode(arr);

console.log(decoded);
Kaiido
  • 123,334
  • 13
  • 219
  • 285