Hallo.
Im Pseudocode soll es also so aussehen:
Wiederhole bis EOF
Lies aus Datei xyz.txt bis „$“
Lies von „$“ bis Leerzeichen
Wort noch nicht in Array vorhanden?
Zu Array hinzufügen
Ende Wiederhole
Also ich würde zuerst alles in einen Array lesen, sprich die komplette Datei und nachher das Array weiterverarbeiten.
Hier mal die Funktion für das Einlesen der Datei
///
/// This functions reads a txt-file from remote or local source
///
///
/// al Arraylist
public static ArrayList readTxtContent(string strFilename)
{
ArrayList al = new ArrayList();
StreamReader SR;
string S;
try
{
SR = File.OpenText(strFilename);
S = SR.ReadLine();
while (S != null)
{
al.Add(S);
S = SR.ReadLine();
}
SR.Close();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message.ToString() + Environment.NewLine);
}
return al;
}
Als nächste „get unique values of array“…
Public Function GetUniqueArrayValues(ByVal array() As String) As String()
Dim x, y, n, sa() As Integer
y = -1
n = 0
array.Sort(array)
For Each x In array
If x y Then
ReDim Preserve sa(n)
sa(n) = x
y = x
n += 1
End If
Next
Return sa
End Function
Für das Zeugs mit dem $ usw. verwende IndexOf, LastIndexOf, Substring… Vordefinierte String-Methoden.
Gruß Sebastian