Leo
Agosto 16, 2005, 11:08am
#1
Recuperar o conteúdo binário de um arquivo do banco de dados eu consigo fazer…
Agora, como eu consigo gerar o conteúdo binário de um arquivo local sem inserir na base ? ?
Tenho pdf’s, ppt’s, xls’s e outros arquivos e queria gerar o binário ao mesmo tempo em que eu leio.
Gostaria de ajuda nisto…
obrigado
Leo
kinow
Agosto 16, 2005, 11:28am
#3
Utilizei isto esses dias para MMS, espero que ajude.
InputStream is = new FileInputStream(infile);
ByteArrayOutputStream bos = new ByteArrayOutputStream();
byte[] data = new byte[1000];
int length = is.read(data);
while (length != -1) {
if (length > 0) {
bos.write(data, 0, length);
}
length = is.read(data);
}
byte[] imageData = bos.toByteArray();
:shock:
Abraços.
Abdon
Agosto 16, 2005, 12:56pm
#4
fazia isto desta forma:
public byte[] getBytesFromFile(File file) throws IOException {
InputStream is = new FileInputStream(file);
long length = file.length();
if (length > Integer.MAX_VALUE) {
// faio, muito grande :(
}
byte[] bytes = new byte[(int)length];
int offset = 0;
int numRead = 0;
while (offset < bytes.length
&& (numRead=is.read(bytes, offset, bytes.length-offset)) >= 0) {
offset += numRead;
}
if (offset < bytes.length) {
throw new IOException("Faio");
}
is.close();
return bytes;
}
ela não esta correta ou é a mesma coisa??
kinow
Agosto 16, 2005, 1:02pm
#5
Não testei aqui, porém acredito que esteja correto, entretanto, há mais código rsrsrs, as duas formas devem fazer a mesma coisa. Abraços.
Leo
Agosto 16, 2005, 10:11pm
#6
Fiquei a tarde inteira sem acesso a net…so to vendo agora…
Funcionou o q eu qeria…
valew por mais esta galera!!!