将数据库表(使用BLOB)导出为CSV

时间:2012-08-16 22:21:31

标签: java csv export-to-csv

有人可以教我如何使用java将BLOB表导出为CSV吗?然后我会导入它们。关于这个问题的一些概念会做,有些代码可以帮助解释。 感谢。

1 个答案:

答案 0 :(得分:1)

如果是我,我只会对二进制数据进行编码,然后像任何其他字段一样将其写出来。 Apache Commons为此提供了很好的API。我会根据您的需要使用Base32或Base64二进制编码器。这可能被称为URL编码,但我不是100%确定...概念仍然相同,你仍然只是采用二进制数据并将其编码为字符串:

byte[] myBlobData = \\ Retrieve from database
Base32 encoder = new Base32();
String encodedData = encoder.encodeToString(myBlobData);
// Write out data as you normally would for a CSV file

然后以相反的方式阅读它:

String encodedData = \\ Read from file
byte[] myBlobData = encoder.decode(encodedData);

我认为这对你有用。 URL编码(或类似的编码)适用于此,因为它们旨在允许二进制数据作为字符串安全地传输。如果你不想使用Apache Commons库,你可以使用Java URLEncoder来获得它。