doberkofler / PLSQL-JSON

The JSON encode/decode library for Oracle PL/SQL
MIT License
47 stars 15 forks source link

json_object parses \r into chr(14) #8

Closed fb-datax closed 4 years ago

fb-datax commented 7 years ago

The char "\r" is converted as chr(14) and not as chr(13):

Samplecode:

set serveroutput on size unlimited;
declare
    v_json          json_object;
    v_json_string   varchar(32000)      := '{"data": "\r\n\tsomevalue"}';
    v_string        varchar(32000)      := '';
    v_ascii         varchar(32000)      := '';
begin

dbms_output.enable; 
v_json := json_object(v_json_string);
v_string := v_json.get('data').get_string();

/* Loop through and print ascii values */
for i in 1..length(v_string) loop
    v_ascii := v_ascii || ' ' || to_char(ascii(substr(v_string,i,1)));
end loop;
dbms_output.put_line ('ASCII: ' || v_ascii);    
end;
/

Output: ASCII: 14 10 9 115 111 109 101 118 97 108 117 101

Expected: ASCII: 13 10 9 115 111 109 101 118 97 108 117 101

doberkofler commented 4 years ago

Fixed in 0.5.0. Thank you!