oracle 利用url encode decode转换字符编码

来源:互联网 发布:javascript入门经典pdf 编辑:程序博客网 时间:2024/06/05 18:07
   oracle数据库环境的字符集是GBK的,也就是每个中文占用2个字节的长度,可以通过utl_url把相应的字符进行编码解码。   utl_url.escape可以对字符串进行URLEncode,utl_url.escape定义如下:
FUNCTION escape(url  IN VARCHAR2 CHARACTER SET ANY_CS,               escape_reserved_chars IN BOOLEAN  DEFAULT FALSE,               url_charset IN VARCHAR2 DEFAULT utl_http.get_body_charset)RETURN VARCHAR2 CHARACTER SET url%CHARSET;
begin  dbms_output.put_line(utl_url.escape('中国http://www.baidu.com/参数/=+/',true,'GB2312'));  dbms_output.put_line(utl_url.escape('中国http://www.baidu.com/参数/=+/',false,'GB2312'));  dbms_output.put_line(utl_url.escape('中国http://www.baidu.com/参数/=+/',true,'UTF8'));  dbms_output.put_line(utl_url.escape('中国http://www.baidu.com/参数/=+/',false,'UTF8'));end;%D6%D0%B9%FAhttp%3A%2F%2Fwww.baidu.com%2F%B2%CE%CA%FD%2F%3D%2B%2F%D6%D0%B9%FAhttp://www.baidu.com/%B2%CE%CA%FD/=+/%E4%B8%AD%E5%9B%BDhttp%3A%2F%2Fwww.baidu.com%2F%E5%8F%82%E6%95%B0%2F%3D%2B%2F%E4%B8%AD%E5%9B%BDhttp://www.baidu.com/%E5%8F%82%E6%95%B0/=+/
   utl_url.unescape可以对字符串进行URLDecode,utl_url.unescape定义:
  FUNCTION unescape(url IN VARCHAR2 CHARACTER SET ANY_CS,        url_charset IN VARCHAR2 DEFAULT utl_http.get_body_charset)  RETURN VARCHAR2 CHARACTER SET url%CHARSET;
begindbms_output.put_line( utl_url.unescape('http%3A%2F%2Fwww.baidu.com%2F%E5%8F%82%E6%95%B0%2F%3D%2B%2F','UTF8'));end;
原创粉丝点击