您的位置:首页 > 其它

Blob,Clob类型转换String

2010-12-16 11:15 519 查看
1.写入Blob字段

CsOaMail mail = new CsOaMail(from, to[0], null, null, subject,new Date(), null, "0", sentFolderId);

mail.setContent(Hibernate.createBlob(content.getBytes("UTF-8")));

cm = (CsOaMail) emailDAO.save(mail);//保存入库

2.BLob to String

csMail = (CsOaMail) emailDAO.get(CsOaMail.class, id); // 取出邮件信息
// 处理邮件内容信息 BLOB to string
Blob blob=csMail.getContent();
InputStream ins = blob.getBinaryStream();
byte[] c = new byte[(int) blob.length()];
ins.read(c);
String contentString = new String(c);
csMail.setContentString(contentString);
ins.close();

1.写入Clob

mail.setContent(Hibernate.createBlob(content);

2.string to Clob

java.sql.Clob c = new javax.sql.rowset.serial.SerialClob("abc".toCharArray());

3.

/**
* Clob数据转为String
*
* @param clob
* @return
*/
public String doClobToString(Clob clob) {
if (null == clob)
return null;
Reader reader = null;
StringBuffer sb = new StringBuffer();
BufferedReader bfReader = null;
try {
reader = clob.getCharacterStream();
// 得到流
bfReader = new BufferedReader(reader);
String s = bfReader.readLine();
while (null != s) {// 执行循环将字符串全部取出付值给StringBuffer由StringBuffer转成STRING
sb.append(s);
s = bfReader.readLine();
}
} catch (Exception e) {
e.getCause();
} finally {
try {
if (null != reader)
reader.close();
if (null != bfReader)
bfReader.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (sb.toString().equals(""))
return null;
else
return sb.toString();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: