1. 利用dbms_lob.substr()方法可將對應字段轉換成字符串如下
select dbms_lob.substr(content) from NEWS
該方法有個缺點,當content字段長度超過某個值時,會報錯。
2.獲取Clob對象,在Java中通過對流處理獲取字段內容,該方式沒有長度限制
select content from NEWS
// 將字CLOB轉成STRING類型 public String ClobToString(Clob clob) throws SQLException, IOException { String reString = ""; java.io.Reader is = clob.getCharacterStream();// 得到流 BufferedReader br = new BufferedReader(is); String s = br.readLine(); StringBuffer sb = new StringBuffer(); while (s != null) {// 執行循環將字符串全部取出付值給StringBuffer由StringBuffer轉成STRING sb.append(s); s = br.readLine(); } reString = sb.toString(); return reString; }
接下來的重點是將從數據庫獲取到的該字段的對象轉換成Clob對象,如下:
String content = ClobToString((Clob)obj[1]);
其中我的obj是從數據庫獲取的字段數組,obj[1]對應該Clob對象。
