代码段:

  1.执行clob转String

public static String ClobToString(Clob sc) throws SQLException, IOException {
  String reString = "";
  Reader is = sc.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;
}

  2.主类执行循环读取数据库+将转换内容存储至文本文档

public static void main(String[] args) {
  Connection connect = null;
  Statement statement = null;
  ResultSet resultSet = null;
  ResultSet resultSet1 = null;
  PreparedStatement preState = null;
  PreparedStatement preState1 = null;
  try {

  // 利用Driver对象
  Driver driver = new OracleDriver();
  DriverManager.deregisterDriver(driver);

  Properties pro = new Properties();
  pro.put("user", "用户名");

  pro.put("password", "密码");
  connect = driver.connect("jdbc:oracle:thin:@地址:端口:数据库名", pro);

  // 查询所有
  String sql1 = "数据库相关查询语句";
  preState1 = connect.prepareStatement(sql1);
  resultSet1 = preState1.executeQuery();

  while (resultSet1.next()) {

  //打印相关字段名,看看验证一下是否是想要的字段
  System.out.println(resultSet1.getString("字段名"));

  //定义其中变量(试个人数据库语句情况而定可取舍)
  String str = resultSet1.getString("字段名");

  //验证一下打印字段是否正确
  System.out.println(str);
  String sql = "相关查询语句";

  preState = connect.prepareStatement(sql);

  resultSet = preState.executeQuery();
  
  while (resultSet.next()) {
  String content = ClobToString(resultSet.getClob("自定义字段或表名"));
  BufferedWriter bw = null;
  try {

  //相关路径为:src\\clobtest\\newfile.txt这个是我自己本地路径(视个人情况而修改)
  bw = new BufferedWriter(new FileWriter("src\\clobtest\\newfile.txt", true));

  // for (int j = 0; j < 1; j++) {
  bw.write(content + '\n');
  // }
  bw.flush();

  } catch (IOException e) { 
  e.printStackTrace();
    } finally {
        try {
          if (bw != null) {
            bw.close();
          }
         } catch (IOException e) { 
           e.printStackTrace();
          }
        }
      }
    }

  } catch (Exception e) {
  e.printStackTrace();
  } finally {
  //关闭资源
  try {
    if (resultSet != null)
    resultSet.close();
    if (preState != null)
    preState.close();
    if (statement != null)
    statement.close();
    if (connect != null)
    connect.close();
    } catch (SQLException e) {
      e.printStackTrace();
    }
  }
}

知识点:clob转换至string、jdbc:oracle数据库连接、基本读取集合内容至文本文档。

oracle数据库中将clob字段内容利用java提取出至文本文档中的更多相关文章

  1. 编写Java程序,读取文本文档的内容,去除文本中包含的“广告”字样,把更改后的内容保存到一个新的文本文档中

    查看本章节 查看作业目录 需求说明: 读取文本文档的内容,去除文本中包含的"广告"字样,把更改后的内容保存到一个新的文本文档中 实现思路: 在main() 方法中,使用 new F ...

  2. Java 写一段字符到指定的文本文档中,如果该文本文档不存在,则创建该文本文档

    写一段字符到指定的文本文档中,如果该文本文档不存在,则创建该文本文档 import java.io.File; import java.io.FileNotFoundException; import ...

  3. Java 单字节、多字节读取文本文档中的内容

    文本文档位于工程下. 鼠标右击工程,选择“new - File”,即可创建. 文本文档的格式:GBK 单字节读取 import java.io.File; import java.io.FileInp ...

  4. 文本文档中各字母出现次数汇总(java)

    package 字母频率统计; import java.io.*; public class Inputfile { public static void main(String args[]) { ...

  5. Oracle数据库 获取CLOB字段存储的xml格式字符串指定节点的值

    参照: Oracle存储过程中使用游标来批量解析CLOB字段里面的xml字符串 背景:在写存储过程时,需要获取表单提交的信息.表单信息是以xml格式的字符串存储在colb类型的字段dataxml中,如 ...

  6. Java提取文本文档中的所有网址(小案例介绍正则基础知识)

    正则表达式基础以及Java中使用正则查找 定义: 正则表达式是一些用来匹配和处理文本的字符串 正则的基础(先大致了解下) 1. 正则表达式的作用 查找特定的信息(搜索) 替换一些文本(替换) 2. 正 ...

  7. 过滤文本文档中的数据并插入Cassandra数据库

    代码如下: package com.locationdataprocess; import java.io.BufferedReader; import java.io.File; import ja ...

  8. 基于Oracle数据库登陆界面及功能实现 Java版

    首先要在Oracle数据库创建表文件,包括建立表头以及关键字(唯一标识符),此次程序所用的表名称为SW_USER_INFO,表头有UNAME.UKEY.USEX等,关键字为UCC,然后添加一条记录,用 ...

  9. oracle数据库对date字段类型存在空值进行排序的处理方法

    oracle数据库对date字段类型存在空值进行排序的处理方法      oracle 数据库,如果表中有一个字段类型为date,且该字段类型存在空值,并且需要排序,     解决方法为使用oracl ...

随机推荐

  1. TreeView绑定

    )             {                 return;             }             foreach (NodeInfo info in list)    ...

  2. java算法 蓝桥杯 文化之旅

    问题描述 有一位使者要游历各国,他每到一个国家,都能学到一种文化,但他不愿意学习任何一种文化超过一次(即如果他学习了某种文化,则他就不能到达其他有这种文化的国家).不同的国家可能有相同的文化.不同文化 ...

  3. JS中的函数声明和函数表达式的区别,即function(){}和var function(){},以及变量提升、作用域和作用域链

    一.前言 Uncaught TypeError: ... is not a function function max(){}表示函数声明,可以放在代码的任何位置,也可以在任何地方成功调用: var ...

  4. 小程序开发运营必看:微信小程序平台运营规范

    一.原则及相关说明 ​ 微信最核心的价值,就是连接——提供一对一.一对多和多对多的连接方式,从而实现人与人.人与智能终端.人与社交化娱乐.人与硬件设备的连接,同时连接服务.资讯.商业. ​ 微信团队一 ...

  5. 安装了Anaconda之后,Maya运行报错,Python 找不到 Maya 的 Python 模块

    以前Maya用的好好地,结果安装了Anaconda之后,maya启动以后,日志就会报错(如下),只能自主建模,不能打开以前创建的模型,也不能导入fbx,错误提示就是Maya找不到Python模块,在网 ...

  6. telnet客户端模拟浏览器发送请求

    telnet 客户端 telnet客户端能够发出请求去连接服务器(模拟浏览器) 使用telnet之前,需要开启telnet客户端 1.进入控制面板 2.进入程序和功能,选择打开或关闭windows功能 ...

  7. java中如何实现两个值互换

    public class SwapVariable { public static void main(String[] args) { // 将两个数据进行交换: method2(,); metho ...

  8. 怎样在本地电脑上连接另外一台电脑上的mysql数据?(代码示例)

    基本上有两种方式: 1,使用MYSQL的管理工具,可以远程连接,比如用导航猫系列的,只要知道对方IP,然后就可以自己输入账号密码连接了. 2,使用代码连接. Java代码示例: package com ...

  9. [C++] c Struct VS c++ Struct

    c Struct c语言生命变量要加上struct c语言结构体内部不能有函数 C语言结构体没有共有,私有和继承

  10. Python获取服务器的厂商和型号信息-乾颐堂

    Python获取服务器的厂商和型号信息,在RHEHL6下,需要系统预装python-dmidecode这个包(貌似默认就已经装过了) 脚本内容如下 [root@linuxidc tmp]# cat t ...