2012-08-24 4 views
1

CSVWriter를 사용하여 데이터베이스 테이블을 CSV로 내보내려고했습니다.CSVWriter를 사용하여 BLOB로 데이터베이스 테이블 내보내기

하지만 내 테이블에 BLOB 데이터가 있습니다. 수출에 어떻게 포함시킬 수 있습니까?

나중에 나중에 CSVReader를 사용하여 CSV를 내 보냅니다. 누구나 몇 가지 개념을 공유 할 수 있습니까?

ResultSet res = st.executeQuery("select * from "+db+"."+obTableNames[23]); 

int colunmCount = getColumnCount(res); 

try { 
    File filename = new File(dir,""+obTableNames[23]+".csv"); 
    fw = new FileWriter(filename); 


    CSVWriter writer = new CSVWriter(fw); 
    writer.writeAll(res, false); 
    int colType = res.getMetaData().getColumnType(colunmCount); 
    dispInt(colType); 
    fw.flush(); 
    fw.close(); 

} catch (IOException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} 

답변

2

당신이 아파치에서 제공하는 Base64에서 encodeBase64String(byte[] data) 방법을 살펴나요 수출에 대한 내 코드의 일부이다?

base64 알고리즘을 사용하여 2 진 데이터를 인 코드하지만 출력을 청크하지 않습니다.

이렇게하면 이진 대형 개체를 나타내는 인코딩 된 문자열을 반환하고이를 CSV에 통합 할 수 있습니다.

다른 쪽 사람은 decodeBase64String(String data)을 사용하여 BLOB을 다시 가져올 수 있습니다.

+0

좋아,이 하나를 시도해 볼께 .. 감사합니다 Logged – lawrence

관련 문제