oracle blob字段转,java oracle blob字段的内容转成字符窜

public static String ConvertBLOBtoString(String city_id, String data_date) { String newStr = ""; // 返回字符串 long BlobLength; // BLOB字段长度 byte[] bytes; // BLOB临时存储字节数组 int i = 1; // 循环变量 Connection conn = null; Statement st = null; ResultSet rs = null; try { conn = Conn.getDBConnection(); st = conn.createStatement(); String sql = "select weather from yt_weather where dm_id='" + city_id + "' and to_char(data_date,'yyyy-mm-dd')='" + data_date + "'"; System.out.println(" ConvertBLOBtoString sql" + sql); rs = st.executeQuery(sql); while (rs.next()) { oracle.sql.BLOB blob = (oracle.sql.BLOB) rs.getBlob("weather"); byte[] msgContent = blob.getBytes(); // BLOB转换为字节数组 BlobLength = blob.length(); // 获取BLOB长度 if (msgContent == null || BlobLength == 0) // 如果为空,返回空值 { return ""; } else { while (i < BlobLength) // 循环处理字符串转换,每次1024;Oracle字符串限制最大4k { bytes = blob.getBytes(i, 1024); i = i + 1024; newStr = newStr + new String(bytes, "GB2312"); } } } // System.out.println(newStr); // System.out.println(newStr.length()); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { if (rs != null) { try { rs.close(); rs = null; } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if (st != null) { try { st.close(); st = null; } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } try { conn.close(); conn = null; } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } return newStr; }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值