Sample code for 30+ languages & platforms
PowerBuilder

Unicode Escape

Convert a string to Unicode escaped values.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
oleobject loo_Sb
string ls_Str
string ls_Charset

li_Success = 0

loo_Sb = create oleobject
li_rc = loo_Sb.ConnectToNewObject("Chilkat.StringBuilder")
if li_rc < 0 then
    destroy loo_Sb
    MessageBox("Error","Connecting to COM object failed")
    return
end if

ls_Str = "bôn"
ls_Charset = "not_used"

// Unicode escape all chars using \uHHHH
li_Success = loo_Sb.SetString(ls_Str)
loo_Sb.Encode("unicode-escape-all",ls_Charset)
Write-Debug loo_Sb.GetAsString()
// Output is \u0062\u00f4\u006e

// Unicode escape only 8bit chars using \uHHHH
li_Success = loo_Sb.SetString(ls_Str)
loo_Sb.Encode("unicode-escape-8bit",ls_Charset)
Write-Debug loo_Sb.GetAsString()
// Output is b\u00f4n

// To use uppercase hex chars (A-F), add "-upper" to the encoding name
li_Success = loo_Sb.SetString(ls_Str)
loo_Sb.Encode("unicode-escape-all-upper",ls_Charset)
Write-Debug loo_Sb.GetAsString()
// Output is \u0062\u00F4\u006E

// Unicode escape all chars using \u{HHHH}
li_Success = loo_Sb.SetString(ls_Str)
loo_Sb.Encode("unicode-escape-all-curly-upper",ls_Charset)
Write-Debug loo_Sb.GetAsString()
// Output is \u{0062}\u{00F4}\u{006E}

// Unicode escape 8bit chars using HTML hex &#xH;
li_Success = loo_Sb.SetString(ls_Str)
loo_Sb.Encode("unicode-escape-8bit-html-hex",ls_Charset)
Write-Debug loo_Sb.GetAsString()
// Output is b&#xf4;n

// Unicode escape all chars using HTML decimal &#D;
li_Success = loo_Sb.SetString(ls_Str)
loo_Sb.Encode("unicode-escape-all-html-dec",ls_Charset)
Write-Debug loo_Sb.GetAsString()
// Output is &#98;&#244;&#110;

// Unicode escape all chars using u+HHHH
li_Success = loo_Sb.SetString(ls_Str)
loo_Sb.Encode("unicode-escape-all-plus",ls_Charset)
Write-Debug loo_Sb.GetAsString()
// Output is u+0062u+00f4u+006e

// Unicode escape 8bit chars using angled brackets <HHHH>
li_Success = loo_Sb.SetString(ls_Str)
loo_Sb.Encode("unicode-escape-8bit-angle-upper",ls_Charset)
Write-Debug loo_Sb.GetAsString()
// Output is b<00F4>n


destroy loo_Sb