SoloCodigo

Programación General => Java => Mensaje iniciado por: xuturk en Jueves 2 de Junio de 2011, 13:49

Título: Saber tamaño de fichero en servidor
Publicado por: xuturk en Jueves 2 de Junio de 2011, 13:49
Hola a todos!

Acabo de programar una aplicacion que lo que hace basicamente es insertas una direccion de un fichero (http) en un textbox, y medianto inputStream y OutputStream lo descarga al disco duro del usuario, mi problema viene por que tengo una barra de progreso, y claro para hacer los calculos de cada porcentaje necesitaria saber el tamaño total del fichero, he visto que programas como jdownloader lo hacen cuando metes un fichero http te dan el tamaño total, pero solo he conseguido hacerlo con .length a los ficheros locales, no a los que estan en servidor puesto que no encuentro metodo.

Si alguien pudiera decirme alguna forma de hacerlo se lo agradeceria mucho.

Un saludo y muchas gracias!
Título: Re: Saber tamaño de fichero en servidor
Publicado por: antony_soluciones en Viernes 10 de Junio de 2011, 03:30
Aquí hay un código que sirve para hacer eso, espero le sirva.

Código: Text
  1.  
  2. <input type="file" id="files" name="files[]" multiple />
  3. <output id="list"></output>
  4.  
  5. <script>
  6.   function handleFileSelect(evt) {
  7.     var files = evt.target.files; // FileList object
  8.  
  9.     // files is a FileList of File objects. List some properties.
  10.     var output = [];
  11.     for (var i = 0, f; f = files[i]; i++) {
  12.       output.push('<li><strong>', f.name, '</strong> (', f.type || 'n/a', ') - ',
  13.                   f.size, ' bytes, last modified: ',
  14.                   f.lastModifiedDate.toLocaleDateString(), '</li>');
  15.     }
  16.     document.getElementById('list').innerHTML = '<ul>' + output.join('') + '</ul>';
  17.   }
  18.  
  19.   document.getElementById('files').addEventListener('change', handleFileSelect, false);
  20. </script>
  21.  
  22.  
  23.  

La página de donde lo tomé, es la siguiente http://www.html5rocks.com/en/tutorials/file/dndfiles/

Atte,

@antonyDelSol
Título: Re: Saber tamaño de fichero en servidor
Publicado por: xuturk en Viernes 10 de Junio de 2011, 10:24
Muchas gracias, pero no pedia ejemplo de Javascript aunque puede que en un futuro me sea util.

Pedia de Java aunque ya lo consegui, por si alguien le surge la misma duda, la solucion es sacar la cabecera del fichero seleccionado en el objeto URLConnection, mediante el metodo getContentLength()  con él se saca el tamaño exacto en bytes.

Un saludo y gracias :D
Título: Re: Saber tamaño de fichero en servidor
Publicado por: antony_soluciones en Sábado 11 de Junio de 2011, 16:37
jejeje... que bien!