2012-08-24 2 views
1

Я уже пытался экспортировать таблицы базы данных в CSV с помощью CSVWriter.с использованием CSVWriter для экспорта таблиц базы данных с BLOB

Но мои таблицы содержат данные BLOB. Как включить их в мой экспорт?

После этого им будет импортирован этот экспортированный CSV с помощью CSVReader. Может ли кто-нибудь поделиться некоторыми понятиями?

Это часть моего кода для экспорта

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

Принимала вы посмотрите на encodeBase64String(byte[] data) метод из Base64 предоставленной Apache?

Кодирует двоичные данные с использованием алгоритма base64, но не выдает вывод.

Это должно позволить вам вернуть закодированные строки, представляющие ваш двоичный большой объект, и включить его в свой CSV.

Люди с другой стороны могут затем использовать decodeBase64String(String data), чтобы вернуть BLOB обратно.

+0

ОК, я попробую этот .. спасибо – lawrence

Смежные вопросы