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

29 篇文章 0 订阅
22 篇文章 0 订阅
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
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值