Размер файла .csv от выбранного оракула - PullRequest
0 голосов
/ 04 октября 2018

Я реализовал java-класс, который с помощью выбранного SQL-оракула создает файл (csv) (временный) и отправляет его по электронной почте с запланированным процессом.У меня проблема: почтовый клиент имеет размер отправки и получения.Как я могу, если вы знаете, насколько большим будет мой файл?Какие еще проверки вы рекомендуете, чтобы избежать создания файла и невозможности его отправки / получения?

Заранее большое спасибо

Ответы [ 2 ]

0 голосов
/ 04 октября 2018

Если вы хотите оценить размер набора результатов SQL до того, как сгенерирует файл, это немного сложно.Люди задавали подобные вопросы раньше - один , два .

Я бы предложил сделать то, что этот ответ говорит: сделать SELECT COUNT(*)с вашим запросом, чтобы получить количество строк.(Вы также можете сделать это с помощью курсора или объекта ResultSet, в зависимости от того, как вы это делаете.) Затем умножьте количество строк на средний размер строки, что вы можете сделать, посмотрев на некоторые из ваших сгенерированных файлов CSV.и вычисление размера, деленного на количество строк.

Если это распространенная проблема, вы также можете рассмотреть архивирование файлов CSV .Они обычно сжимаются очень хорошо.

0 голосов
/ 04 октября 2018

Когда вы делаете временный файл

File tempFile;

Просто сделайте

double size=tempFile.lenght();

вернет размер файла в байтах, и вы можете проверить его перед отправкой по электронной почте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...