热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

oracle数据库转码,oracle数据库base64位转码解码

oracle转码函数CREATEORREPLACEFUNCTIONbase64decode(p_clobCLOB)RETURNCLOBISl_blobCLOB;l_rawRAW(3

oracle 转码函数

CREATE OR REPLACE FUNCTION base64decode(p_clob CLOB)

RETURN CLOB

IS

l_blob  CLOB;

l_raw RAW(32767);

l_amt NUMBER := 7700;

l_offset NUMBER := 1;

l_temp VARCHAR2(32767);

BEGIN

BEGIN

DBMS_LOB.createtemporary (l_blob, FALSE, DBMS_LOB.CALL);

LOOP

DBMS_LOB.read(p_clob, l_amt, l_offset, l_temp);

l_offset := l_offset + l_amt;

l_raw := UTL_ENCODE.base64_decode(UTL_RAW.cast_to_raw(l_temp));

DBMS_LOB.append (l_blob, TO_CLOB(utl_raw.cast_to_varchar2(l_raw)));

END LOOP;

EXCEPTION

WHEN NO_DATA_FOUND THEN

NULL;

END;

RETURN l_blob;

END;

oracle 解码函数:

CREATE OR REPLACE FUNCTION base64encode(p_clob CLOB)

RETURN CLOB

IS

l_blob  CLOB;

l_raw RAW(32767);

l_amt NUMBER := 7700;

l_offset NUMBER := 1;

l_temp VARCHAR2(32767);

BEGIN

BEGIN

DBMS_LOB.createtemporary (l_blob, FALSE, DBMS_LOB.CALL);

LOOP

DBMS_LOB.read(p_clob, l_amt, l_offset, l_temp);

l_offset := l_offset + l_amt;

l_raw := UTL_ENCODE.base64_encode(UTL_RAW.cast_to_raw(l_temp));

DBMS_LOB.append (l_blob, TO_CLOB(utl_raw.cast_to_varchar2(l_raw)));

END LOOP;

EXCEPTION

WHEN NO_DATA_FOUND THEN

NULL;

END;

RETURN l_blob;

END;

java  解码函数

public  String decodeStr(String encodeStr){         byte[] b=encodeStr.getBytes();         Base64 base64=new Base64();         b=base64.decode(b);                 String s=""; try { s = new String(b,"GBK"); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); }         logger.debug("value-------------------------------------:"+s);         return s;     }



推荐阅读
author-avatar
吉翠芙_899
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有