Hallo zusammen, ich habe ein kleines Anliegen: Ich muss mir ein kleines Programm schreiben um Datensätze (ähnlich CNC Daten) von Format A nach Format B umzuwandeln. Beide Datenformate sind ASCI-Dateien und auch für Menschen verständlich, einen ersten Test-Parser in C++ hab ich auch schon geschrieben als "Proof of Concept". Jetzt möchte ich das ganze ein wenig verschönern, meine C++ Kenntnisse sind aber eher lückenhaft, daher macht es kaum Unterschied ob ich noch eine neue Sprache lerne. Ich brauche also ein Programm/eine GUI, welche eine Datei einließt (nach Auswahl), die Datensätze herraussucht (bisher werden dynamisch je nach Anzahl der Teile structs mit allen Variablen erstellt und am Ende in die neue Datei wieder ausgegeben. Die Gui soll noch ein paar Möglichkeiten haben wie Änderung der Anzahl, Änderung des Materials usw. Ich habe bisher nur C/C++ Konsolenanwendungen geschrieben und daher kein Plan ob sich sowas in C schön lösen lässt. Als Alternative überlege ich, die Parameter als Kommandozeilenparameter zu nutzen und eine GUI nur zur Dateiauswahl in einer Sprache nach Wahl zu nutzen. Achja: Betriebssystem Windows ab XP ;) Vielleicht hat ja jemand einen guten Hinweis/Googleansatz/Whatever Danke, Olli
Ich würde C++ mit Qt nehmen. C eignet sich eher weniger für graphische Oberflächen.
Also die flexibelsten Datenstrukturmöglichkeiten hat so weit ich weis Python. Dort kannst du quasi Arrays anlegen, aber mit Zahlen oder Strings als Indexen und die Daten sind auch beliebig (Zahlen, Strings, andere Arrays, whatever). Es funktioniert auch alles gemischt und durcheinander
1 | >>> data = {} |
2 | >>> data["asdf"] = "Hans" |
3 | >>> data[3] = "Wurstbrot" |
4 | >>> data |
5 | {3: 'Wurstbrot', 'asdf': 'Hans'} |
6 | >>> data["innerData"] = {"abc": "def", 42: 1337} |
7 | >>> data |
8 | {3: 'Wurstbrot', 'innerData': {42: 1337, 'abc': 'def'}, 'asdf': 'Hans'} |
9 | >>> data["innerData"][42] += 1 |
10 | >>> data |
11 | {3: 'Wurstbrot', 'innerData': {42: 1338, 'abc': 'def'}, 'asdf': 'Hans'} |
Ich glaube es gibt nichts was sich damit nicht schön abbilden lässt ;-) Als GUI WxWidgets oder QT oder was dir halt so gefällt
Simon S. schrieb: > Also die flexibelsten Datenstrukturmöglichkeiten hat so weit ich weis > Python. Naja, hängt schon vom Datenformat ab. Solange man nur Text zeilenweise zerhackstücken will, sind Python oder Perl gut brauchbar. Wenn die Grammatik der Datensätze komplizierter wird, kann auch Yacc ganz hilfreich sein. Zwar gibt es auch dafür einen Python-Port, aber die Einbindung in C/C++ ist meiner Meinung nach etwas weniger gewöhnungsbedürftig, sodass in diesem Falle die Waage wieder etwas mehr für C++/Qt stehen würde.
Außerdem ist ja bereits Code in C++ vorhanden. Oder war das eher Wegwerfcode zum Experimentieren, der sowieso nochmal komplett neu geschrieben wird?
Oliver W. schrieb: > Ich muss mir ein kleines Programm schreiben um Datensätze (ähnlich CNC > Daten) von Format A nach Format B umzuwandeln. Wurde dafür nicht schon vor 40 Jahren AWK geschrieben ? http://gnuwin32.sourceforge.net/packages/gawk.htm
Nimm dafür das kostenlose Lazarus/Delphi, da ist die GUI gleich mit dabei: http://www.lazarus.freepascal.org/
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.