Hallo Forum,ich habe eine Textdatei im Format
Timestamp:ID:Anzahl:Link:
Sieht so aus:
1128645152:269095:2:<ein Link>:
Diese Textdatei wird in ein HTML-File umgewandelt. Nun habe ich ein riesengroßes File, was unheimlich lang zum Übertragen braucht.
Daher war meine Idee, aus dem Timestamp in der Textdatei für jeden Tag eine HTML-Datei zu generieren. Also Timestamp == Montag, 12.12.2005 => HTML-File "Montag12122005.html" und so weiter. Wie krieg' ich das hin?
Die Subroutine, die das HTML generiert, sieht bisher so aus:
###########################################################
# HTML-Dateien generieren
sub MakeHTML() { my $htmlzeile;
my $counter;
my %htmlhash;
my $filedatum;
print "HTML-Seite generieren...\n";
# Textfile einlesen
my @zeilen = &ReadBDNFile($config->{'textfile'});
# Counter für die Spalten mitführen
$counter = 1;
# Durch die Zeilen des Textfiles marschieren
foreach (@zeilen) {
# Zeilen splitten
my ($datum, $id, $anzahl, $link) = split(":",$_);
# HTML-Zeilen zusammenbauen
$htmlzeile .= "<td><a href=\"".$config->{'hrefurl'}. $id ."\" target=\"".$id."\"><img src=\"".$config->{'imgcache'}."/". $id .".jpg\" /></a><br />".localtime($datum)."<br />".$anzahl." mal gesehen</td>";
# Zeilenende bestimmen
if ($counter % $config->{'spalten'} == 0) {
# Spaltenzahl erreicht, Zeilenende
$htmlzeile .= '</tr><tr>';
}
$counter++;
}
# den HTML-Kopf basteln
my $htmlkopf = "<html><head><link rel=\"stylesheet\" type=\"text/css\" href=\"$config->{'stylesheet'}\"><title>$config->{'htmltitle'}</title></head><body>";
# blöd, aber ich muß oben mit 1 anfangen, der Modulofunktion wegen. Die muß ich hier wieder abziehen.
$htmlkopf .= "<h1>gesammelte Werke.</h1><br />".($counter-1)." Bilder<br><table><tr>";
# das HTML-Ende basteln
my $htmlende = "</tr></table></body></html>";
# Zusammenfügen
my @htmlseite = ($htmlkopf,$htmlzeile,$htmlende);
# Und das ganze einer Funktion übergeben, die einfach das Array in eine Datei schreibt.
&WriteBDNFile($config->{'htmlfile'},@htmlseite);
}
Nicht, daß ich nicht schon einen Haufen ausprobiert hätte. Entweder endete es damit, daß ich ein HTML-File mit mehreren hundert Megabyte hatte, oder ein File pro Tag, wo aber doch wieder alle Einträge der Textdatei drinwaren.
Datum: 14.10.2005-22:56
