Da Wikipedia, l'enciclopedia libera.
/*
* +------------------------------------------------------+
* | html2fc - convertire dati all'uso con FioriCadenti |
* +------------------------------------------------------+
* | |
* | Copyright 2004 - Flavio "Iron Bishop" Pastore |
* | http://ironbishop.altervista.org |
* | |
* | Questo programma e` software libero distribuito |
* | secondo le condizioni della GNU GPL versione 2. |
* | |
* +------------------------------------------------------+
* | Ultimo aggiornamento: 12 luglio 2004 |
* +------------------------------------------------------+
*
* Utilizzo: java comuni <Capoluogo>
*
* Il programma necessita di una sottocartella "comuni"
* dove salvare tutti i file "<nomecomune>.txt" e il file
* "lista.txt" con l'elenco dei nomi.
*
*/
import java.io.*;
import java.util.*;
import java.util.regex.*;
class html2fc {
static String LINESEP = System.getProperty("line.separator");
static String FILESEP = System.getProperty("file.separator");
public static void main(String args[]) {
System.out.println("html2fc - convertire dati all'uso con FioriCadenti");
System.out.println("\nQuesto programma e` software libero sotto licenza GNU GPL.\n");
if (args.length == 2 && args[0].equals("comuni")) comuni(args[1]);
else {
System.out.println("Utilizzo:");
System.out.println(" * comuni <Capoluogo>\t(converte il file \"comuniCapoluogo.txt\")");
}
}
public static void comuni(String Capoluogo) {
String buffer, voce, lista;
buffer = ""; voce = ""; lista = "";
try {
// legge il file
FileReader fr = new FileReader("comuni" + Capoluogo + ".txt");
BufferedReader br = new BufferedReader(fr);
br.readLine(); // salta il primo stub
while ((buffer = br.readLine()) != null) {
if (!buffer.equals("{{stub}}")) voce += buffer + LINESEP;
else {
String comune = voce.substring(voce.indexOf("'''") + 3,
voce.lastIndexOf("'''"));
voce = Spell.check(voce);
// scrive il file
FileWriter fw = new FileWriter("comuni" + FILESEP + comune + ".txt");
fw.write("{{stub}}" + LINESEP + voce);
fw.close();
System.out.println("Comune di " + comune);
voce = "";
lista += comune + LINESEP;
}
}
fr.close();
// scrive la lista dei comuni
FileWriter fw = new FileWriter("comuni" + FILESEP + "lista.txt");
fw.write(lista);
fw.close();
} catch (Throwable t) { System.out.println("" + t); }
}
}