Usando byte[] para arquivos remotos

2 respostas
Y

olá,

estou precisando de uma ajuda aqui, sequinte, tenho um arquivo remoto compactado com gzip e preciso copiar ele e jogar em uma variavel para regravar, estava tentando com String, só que como ele é compactado, quando uso string ele fica corrompido,
entao tentei mudar para o byte[] soh que ele nao ta indo, acho que o metodo que estou pegando o conteudo que não está correto, se alguem puder me ajudar

try {
  GZIPInputStream in = new GZIPInputStream(new FileInputStream("http://192.168.1.2/demo.gz")); 
  OutputStream   out = new FileOutputStream("c:\temp\demo.gz");
    
  byte[] buf = new byte[1024];
  int len;
  while ((len = in.read(buf)) > 0) {
    out.write(buf, 0, len);
  }
    
  in.close();
  out.close();
  
} catch (MalformedURLException e) {
  System.err.println(e); 
} catch (IOException e) {
  System.err.println(e); 
}

acho que o FileInputStream nao suporta entrada de url soh de arquivo local, entao tentei o

URL url = new URL("http://192.168.1.2/demo.gz");
  BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));

só que ai da erro no read(buf)
alquem poderia dar uma ajuda ai, preciso copiar um arquivo compactado de um servidor remoto e salvar em uma pasta no usuario, é um applet que está ja assinado e tal;.

2 Respostas

Y

ninguem pra ajudar? :?

_fs

Coloca o stacktrace da exceção pra gente?

Criado 15 de julho de 2004
Ultima resposta 19 de jul. de 2004
Respostas 2
Participantes 2