Welche Programmiersprache?

UnBreakable

Lt. Junior Grade
Registriert
Sep. 2005
Beiträge
477
Hallo,

also ich habe etwas Erfahrungen mit Programmieren (ganz ganz wenig C++, ein bisschen Java, und relativ gut PHP)

Welche Programmiersprache ist für mich geeignet, für folgendes Problem:
Ich habe ca. 100 Textdateien. In dieser Textdatei befindet sich an einer Stelle (nicht immer die gleiche Stelle, von der Anzahl her, aber es befindet sich davor immer eine bestimmtes Wort (SEQ)) eine Zahl, diese Zahl müsste untersucht werden ob sie fortlaufend ist.

Ich hab mir gedacht VB wäre evt. interessant. Es ist eigentlich nicht zwingend, dass das Programm grafisch ist, wäre aber schön.

Welche Programmiersprache ist für solche Einsatzgebiete zu empfehle zu erlernen?

EDIT: Ich kann auch etwas VBA
 
also unter unix würde ich jetzt sagen: grep, sed und $winziger_skript_für_den_rest. man könnte das problem auch mit awk oder lex/flex lösen. aber du hast ja windows vor dir, daher geht das nicht so einfach.
da vb inzwischen eine regexp-umgebung hat, dürfte es damit tatsächlich am schnellsten gehen. vor allem, da du die sprache schon kennst.
 
Ja, hab ein Windows vor mir.
Also ein kleines Programm hab ich mit VB schon auf die Reihe bekommen.
Kennt jemand gute Tutorials? Evt. sogar basierend auf SharpDevelop?

von VB kenn ich hald den Syntax schon einigermaßen, da der ja eigentlich wie bei VBA ist, wobei ich da auch nur mal ne Woche damit gearbeitet hab.
 
Musste kürzlich Massendaten XML erzeugen - mehr als 5000. In jedem File waren an div. Stellen Variablen mit Zahlen zu ersetzen ... und dafür war PERL perfekt und gibt es auch als ActivePerl für Windows (Ausführung dann in der Kommandozeile). Ob die Untersuchung deiner Zahlen damit klappt, kann ich dir aber nicht sagen.
 
also ich versuche jetzt das ganze mal mit VB zu realisieren.
Ich habe aber bereits ein Problem beim einlesen der Textdatei in eine Variable.
Und zwar wenn ich den befehl
Open "DATEI1" For Input As #1
bekomme ich folgende Fehlermeldung:

Open ist nicht deklariert. Die Datei-E/A-Funktionalität ist im Microsoft.VisualBasic-Namespace verfügbar. (BC30815) - D:\Projekte\XXX\XX\XXX\XX\MainForm.Designer.vb:129

bei google hab ich dazu nix gefunden, kann mir hier bei meinem 1. Problem jemand weiterhelfen?
 
Für dein Problem nimm VB.
 
ok, ich hab mich jetzt für VB entschieden!
Hat jemand einen Lösung für mein aktuelles Problem?
 
ghorst schrieb:
also unter unix würde ich jetzt sagen: grep, sed und $winziger_skript_für_den_rest. man könnte das problem auch mit awk oder lex/flex lösen. aber du hast ja windows vor dir, daher geht das nicht so einfach.
Wieso nicht? Gibt es alles auch für Windows, und teilweise sogar mit grafischer Oberfläche. Einfach mal bei sourceforge.net vorbei schauen.
 
ja, gibt es. hat nur keiner installiert, daher steht da auch "nicht so einfach" und nicht "geht nicht"...
 
Realisierst du es in VB oder VB.Net?
Sieht aus als hättest du die Bibliotheken nicht eingebunden.
Schau dir mal System.IO an.
 
VB.Net
(benutze SharpDevelop)

ich schau mir das mal bei Gelegenheit an, wie das mit den Bibliotheken einfügen funktioniert usw.
 
Die Frage der zu verwendenden Programmiersprache ist eigentlich überflüssig, denn so ein Problem schreit nach Regular Expressions - und die gibts bei jeder Programmiersprache.
 
auch in fortran, cobol oder asm? bitte vermeide es von absolutheiten zu reden, wenn keine gegeben sind. du kannst die meisten sprache mit regulären ausdrücken nachrüsten bzw. sie können es von haus aus. nicht mehr aber auch nicht weniger.
btw. das schreit nicht nach regulären ausdrücken. man kann es auch ohne mühe mittels endlichen automaten darstellen. (ich weiß, dass man das eine in das andere umwandeln kann, nur wären hier endliche automaten die einfachere lösung.)
 
also ich bin in dem Punkt eigentlich Neuling, kann mir jemand jetzt nen Tip geben, was ich genau tun muss damit ich dieses Problem in den Griff bekomm?
 
In VB.Net geht es am einfachsten mit System.IO . Ich habs in VB allerdings immer mit dem Scripting.FileSystemObject gemacht, das is relativ einfach.

Mit dem System.IO sollte es so funktionieren:

Code:
Dim pfad = "C:\text.txt"
Dim inhalt
Dim datei As System.IO.StreamReader = System.IO.File.OpenText(pfad)
inhalt = datei.ReadToEnd
datei.Close()
MsgBox(inhalt)

(in meinem Fall habe ich eine Datei "C:\text.txt", die gelesen wird, aber pfad und inhalt kannst du ja selbst modifizieren bzw. anderweitig auswerten)

mfg Backslash
 
Zuletzt bearbeitet:
Also da du ja schon PHP kannst, würde ich dir für diese simple Aufgabe PHP empfehlen. PHP ist vllt. nicht ganz so schnell wie die anderen, du hast aber schon erfahrungen damit und kannst es einsetzen.
 
naja ich will das eigentlich nicht mit PHP realisieren, weil ich nicht immer einen Webserver laufen lassen will und für solche aufgaben PHP nicht erschaffen wurde.
und ich glaube mit PHP ist das nicht soweit möglich.

Aber egal, ich hab mich schon für VB entschieden und werd versuchen es damit zu lösen.


@Backslash vielen Dank, das hat funktioniert.

ich bin jetzt erstmal auf Konsole umgestiegen, da ich hier erstmal den ganzen anderen Kram ignorieren kann, der mich nur noch weiter verwirrt.

Wie heißt die funktion (nicht substring) sonder wo ich nach einem bestimmten wert in einer Variable (String) suchen kann?

bzw. wie kann ich einen Zeilenumbruch in der Konsole machen? also bei der ausgabe in der Konsole einen Zeilenumbruch?
 
vb.net ist mir nur mäßig bekannt, aber such mal in der hilfe nach regexp bzw. regulären ausdrücken. da wirst du fündig werden.
 

Ähnliche Themen

Zurück
Oben