|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Oct 2005
Città: Livorno
Messaggi: 442
|
[JAVA] size di una pagina web
ciao a tutti, sto realizzando un programmino che scarica una pagina web salvandola in un file di testo. ora, nella finestra di attesa che compare vorrei mettere una progressBar, solo che per visualizzare una percentuale giusta dovrei conoscere la grandezza della pagina, o perlomeno il numero di righe totali visto che è un database composto da righe. un metodo che avevo pensato è quello di considerare come righe totali quelle della volta precedente visto che tanto non varia di molto, e varia al massimo una volta al giorno. ah stiamo parlando di circa 20mila righe. vi copio la porzione di codice dedicata al download...
Codice:
package download;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
public class FileDownloader {
private static BufferedWriter fileOut;
private static FileWriter fw;
private String server;
private String sqlTextFile;
private int rows;
/**
* Costruisce un oggetto settato per scaricare e scrivere in un file il
* map.sql
*
* @param server
* il numero di server da cui scaricare
*/
public FileDownloader(String server) {
sqlTextFile = ("sqlText_s" + server + ".txt");
this.server = server;
try {
fw = new FileWriter(sqlTextFile);
} catch (IOException io) {
io.printStackTrace();
}
fileOut = new BufferedWriter(fw);
}
/**
* Scarica il map.sql e scrive il file sqlText_s[server].txt
*
*/
public void download() {
try {
URL travian = new URL("http://s" + this.server
+ ".travian.it/map.sql");
BufferedReader in = new BufferedReader(new InputStreamReader(
travian.openStream()));
String inputLine;
rows = 0;
while ((inputLine = in.readLine()) != null) {
fileOut.write(inputLine + "\r\n");
rows++;
}
fileOut.close();
in.close();
} catch (MalformedURLException mf) {
//TODO indirizzo errato
mf.printStackTrace();
} catch (IOException io) {
io.printStackTrace();
}
}
/**
* Ritorna il numero di righe scritte nel file.
*
* @return il numero di righe
*/
public int getRows() {
return rows;
}
}
ciao! |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Dec 2001
Città: Milano
Messaggi: 545
|
Quote:
Codice:
/**
* Scarica il map.sql e scrive il file sqlText_s[server].txt
*
*/
public void download() {
try {
URLConnection travian = new URL("http://s" + this.server
+ ".travian.it/map.sql").openConnection();
int size = travian.getContentLength();
BufferedReader in = new BufferedReader(new InputStreamReader(
travian.getInputStream()));
__________________
Angus the Hunter @ Realm of magic | Angus Young @ Batracer °SetiEmperor°| Ninja Technologies { qualunque cosa sia, è veloce e fa male (cit.) } |
|
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Quindi nada ....
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:27.



















