1. Datei zeilenweise einlesen. Auf jeder Zeile an dem ";" trennen siehe Tokenizer
2. es würde sich eine Hashtable anbieten, zum speichern deiner Datei. So kannst du prüfen, ob ein Schlüssel bereits existiert und die Werte entsprechend ändern. Ausserdem kannst du mittels der Methode keySet() alle Schlüssel erhalten. Das Set lässt sich einfach in ein Array umwandeln, dass sich mittels Arrays.sort() leicht sortieren lässt.
3. Das sortierte Array durchlaufen und die Tabelle befüllen. Hier könnte sich ein eigenes TableModel anbieten.
Aber darauf bist inzwischen bestimmt auch schon gekommen, oder?