Так как PostgreSQL является также "SQL Server", я упомяну
date_trunc()
, Который делает точно, что Вы спрашиваете корректно.
, Например:
select date_trunc('hour',current_timestamp); date_trunc ------------------------ 2009-02-18 07:00:00-08 (1 row)
Следующий код должен работать. Имейте в виду, что вам нужно будет правильно обрабатывать исключения.
OutputStream out = null;
InputStream in = null;
try {
out = /* some output stream */;
in = new java.util.GZIPInputStream(/*some stream*/);
byte[] buffer = new byte[4096];
int c = 0;
while (( c = in.read(buffer, 0, 4096)) > 0) {
out.write(buffer, 0, c);
}
} finally {
if (in != null) {
in.close();
}
if (out != null) {
out.close();
}
}
Украсьте входной поток GZIPInputStream
.
InputStream decompressed = new GZIPInputStream(compressed);
Взгляните на GZIPInputStream. Вот пример ; класс обрабатывает это очень прозрачно, использовать его почти не нужно.