Hi,
wenn ich das machen würde, würde ich nach folgendem Prinzip vorgehen, ob es klappt weiß ich nichtg, hab sowas noch nie ausprobiert:
zuerst ganze datei einlesen (war ja nicht so schwer was ;-)
danach eine for oder while schleife, mit der du jede zeile einzeln abarbeitest.
{
in dieser Schleife hast du eine Variable die immer die anzahl an - (Strichen) der vorzeile im kopf hat
Wenn die Anzahl der Striche in der neuen Zeile mit der alten übereinstimmt, gibst du ein " <li>TEXT<\li>\n" aus.
Wenn die Anzahl der Striche größer dem vorigen ist, gibst du " <ul>\n <li>TEXT<\li>\n" aus.
Wenn die Anzahl der Striche kleiner dem vorigen ist, gibst du so oft "</ul>\n" und addierst +1 zur Variablen bis sie bei gleich der vorigen variable ist. danach gibst du "<li>TEXT<\li>\n" aus.
}
Und am Ende dann noch ein Abschließendes </ul> damit die syntax schön ist.
Musst du mal ausprobieren, würfte aber denke ich mal so klappen.
Bis denne, stefan