java中Clob转String代码
【需求】
需要将从数据库中取出来的clob对象转成java中的String对象
【代码】
/**
* clob转成string类型
* @param clob
* @return
*/
public String ClobToString(Clob clob){
String reString = "";
Reader is = null;// 得到流
String s = null;
StringBuffer sb = new StringBuffer();
BufferedReader br = null;
try {
is = clob.getCharacterStream();
br = new BufferedReader(is);
s = br.readLine();
while (s != null) {// 执行循环将字符串全部取出付值给StringBuffer由StringBuffer转成STRING
sb.append(s);
try {
s = br.readLine();
} catch (IOException e) {
e.printStackTrace();
}
}
reString = sb.toString();
} catch (SQLException | IOException e) {
e.printStackTrace();
} finally {
try {
if(br!=null){
br.close();
}
if(is!=null){
is.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return reString;
}
【原理】
简单讲就是将CLOB对象先转成字节流,然后利用BufferedReader中的readline()方法将每一行都append到stringbuffer中,然后转成String对象。
【注】
其实网上clob转string对象的方法有很多,但他们的本质是一样的。我这个也是抄的网上的代码。大家择优选!!!