JAVA导出并以分割,数据库导出数据,并按特定符号分割

package com.exp;

import java.io.File;

import java.io.FileOutputStream;

import java.io.PrintStream;

import java.sql.Connection;

import java.sql.DatabaseMetaData;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.ResultSetMetaData;

import java.sql.SQLException;

import java.util.ArrayList;

import java.util.List;

public class OutFileData {

static Connection conn =null;

static PreparedStatement ps=null;

static ResultSet rst=null;

public static Connection getConnection(){

try {

Class.forName("oracle.jdbc.driver.OracleDriver");

String url="jdbc:oracle:thin:@127.0.0.1:1521/orcl";

conn=DriverManager.getConnection(url,"yuansen","yuansen");

} catch (Exception e) {

System.out.println("数据库连接失败!");

}

return conn;

}

//查询所有的表

public static List getTableNameList() throws SQLException {

getConnection();

DatabaseMetaData dbmd = conn.getMetaData();

// ResultSet rs = dbmd.getTables("hc", "YUANSEN", "%", new String[] { "TABLE" });

ResultSet rs=dbmd.getTables("HC", "YUANSEN", null, null);

List tableNameList = new ArrayList();

while (rs.next()) {

tableNameList.add(rs.getString("TABLE_NAME"));

}

return tableNameList;

}

//导出数据

public static void searchData(){

try {

List tblist= getTableNameList();

//创件一个新的文件

File d=new File("E:/outFile");

if(!d.exists()){

d.mkdir();

}

for(int i=0;i

//创建输出流

FileOutputStream fout=new FileOutputStream(new File(d,"dp04_"+tblist.get(i)+"20141225.txt"));

//查询第 i张表的数据

ps=conn.prepareStatement("select * from "+tblist.get(i));

rst=ps.executeQuery();

ResultSetMetaData rsmd = rst.getMetaData();

int col = rsmd.getColumnCount();

while (rst.next()) {

for (int j = 1; j <= col;j++) {

PrintStream printsm=new PrintStream(fout);

//输出每个列

printsm.print(rst.getString(j));

//如果没有超出列数,就输出 分隔符 "&"

if(j

printsm.print("&");

}

// fw.write(rs.getString(j));

// if (j < col)

// fw.write("&");

}

// fw.write("\n");

}

}

} catch (Exception e) {

e.printStackTrace();

System.out.println("导出数据失败!");

}

}

public static void main(String[] args) {

searchData();

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值