选择oracle的File.csv大小

时间:2018-10-04 14:38:49

标签: java oracle file

我实现了一个Java类,该类提供了一个选择sql oracle,oracle创建了一个文件(csv)(临时),并通过电子邮件以计划的进程发送该文件。 我有一个问题:邮件客户端的发送和接收大小。 给定选择权后,我怎么知道我的文件将有多大?您建议采取哪些其他检查来避免生成文件然后无法发送/接收?

非常感谢

2 个答案:

答案 0 :(得分:0)

创建临时文件时

File tempFile;

只需

double size=tempFile.lenght();

将返回文件大小(以字节为单位),您可以先检查它,然后再发送电子邮件。

答案 1 :(得分:0)

如果要在生成文件之前 估计SQL结果集的大小,这会有些棘手。人们之前曾问过类似的问题-onetwo

我建议您按照this answer的说明进行操作:对您的查询执行SELECT COUNT(*)以获取行数。 (您可能还可以使用游标或ResultSet对象来执行此操作,具体取决于您执行此操作的方式。)然后将行数乘以平均行大小,这可以通过查看一些生成的CSV文件来完成并计算大小除以行数。

如果这是一个常见问题,您也可以考虑使用zipping your CSV files。它们通常压缩得很好。