Clob类型转换为String

SQL CLOB 是内置类型,它将字符大对象存储为数据库表某一行中的一个列值,使用CHAR来存储数据,如XML文档。

如下是一个Clob转换为String的静态方法,可将其放在自己常用的工具类中,想直接用的话,自己稍作修改即可

public static String clobToStr(Clob clob) {
  if(clob == null) {
    return "";
}  
StringBuffer strClob = new StringBuffer();
String str = "";
Reader read = null;
try{
    reader = clob.getCharacterStream();
    char[] buffer = new char[1024];
    int length = 0;
    while (length = reader.read(buffer, 0, 1024)) != -1) {
        strClob.append(buffer, 0, length);
}
} catch (SQLException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
} finally {
    try{
        if (reader != null)
            reader.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
}
str = strClob.toString();
return str;
}

我在将数据导出成Excel时碰到的问题,需要导出的数据中有Clob格式只需将其Clob对象(若直接导出则显示的是地址)

这个工具挺好用的,放在这里,以后方便自己使用。(另:博客园的代码排版实在太丑了,以后还是在外面编辑好再粘贴进来比较好)

posted @ 2019-07-16 15:46  我永远喜欢石原里美  阅读(4005)  评论(0编辑  收藏  举报