Da Hacker
Erfahrenes Mitglied
Hallo!
Ich hätte da mal wieder ein Problem für euch :
Also sicher habt ihr schon beim Lesen des Threadtitels gedacht "Ouhhh! So ein Anfänger" oder so. Aber es ist nicht das Problem eine Datei zu schreiben oder auszulesen, sondern eine Datei auszulesen, die sich während einer Zeitperiode geändert hat.
Einfaches, praktisches Beispiel.
Ich habe den Auftrag ein Kundenerfassungssystem mit VB zu programmieren. Ich habe angefangen und schon das Anlegen einer neuen Datenbankdatei bei einem Fehler programmiert. Und eben auch das EINFACHE Auslesen.
Ich gebe euch hier meinen Code für das Schreiben der Datei:
Wie ihr bereits seht, habe ich Arrays für die Datensätze benutzt.
Aber nun schnell weiter, denn ich überprüfe die geschriebenen Dateien immer und daran liegt wirklich nicht das Problem.
Hier der Code für das Lesen der Datei:
Also die Überprüfung mit der Messagebox hat ergeben, dass keine Daten gelesen werden. Zumindest nicht, wenn mehr als ein Kunde in jener drinnen steht.
So, jetzt kommt mein Appell an euch. Ich hoffe, dass ihr mir soweit helfen könnt, dass ich weiß, wie ich die Indexes - in Verbindung mit dem Lesen von geschriebenen Dateien - benutzen kann. Ich werde dann, bei einem funktionierenden Code die Messagebox am Schluss der Lesefunktion durch Zuweisungen in Labels und Listboxes umändern. Aber bitte schreibt mir, warum es den weiteren Verlauf der Speicherung nicht ließt !
Meine Vermutung:
Also ich denke mal, dass das Problem an den vielen Input-Funktionen liegt, die ja eigentlich immer wieder zurück an den ersten Eintrag der Datei verwiesen werden. Aber ich habe echt keinen Plan, wie ich die Variablen aneinander knüpfen kann und dabei auch noch das Erhöhen der Indexe mache - ausgenommen tausende von Variablen zu deklarieren, aber klar: Das möchte ich natürlich nicht !
Ich habe schon die Forensuche benutzt, aber dadurch nur gelernt, wie man EOF benutzt.
Ihr habt mir schon so oft weitergeholfen, deshalb danke ich euch schon jetzt vielmals im Voraus. Und vielen Dank auch für das Lesen meines langen Textes :
Da' Hacker
Ich hätte da mal wieder ein Problem für euch :
Also sicher habt ihr schon beim Lesen des Threadtitels gedacht "Ouhhh! So ein Anfänger" oder so. Aber es ist nicht das Problem eine Datei zu schreiben oder auszulesen, sondern eine Datei auszulesen, die sich während einer Zeitperiode geändert hat.
Einfaches, praktisches Beispiel.
Ich habe den Auftrag ein Kundenerfassungssystem mit VB zu programmieren. Ich habe angefangen und schon das Anlegen einer neuen Datenbankdatei bei einem Fehler programmiert. Und eben auch das EINFACHE Auslesen.
Ich gebe euch hier meinen Code für das Schreiben der Datei:
Code:
Datensatz(1, 1) = TxtName.Text
Datensatz(1, 2) = TxtVorname.Text
Datensatz(1, 3) = TxtFirma.Text
Datensatz(1, 4) = TxtStrasse.Text
Datensatz(1, 5) = TxtPLZ.Text
Datensatz(1, 6) = TxtWohnort.Text
Datensatz(1, 7) = TxtTelefonPrivat.Text
Datensatz(1, 8) = TxtTelefonGeschaeftlich.Text
Datensatz(1, 9) = TxtMobil.Text
Datensatz(1, 10) = TxtEmail.Text
Datensatz(1, 11) = TxtInternet.Text
Datensatz(1, 12) = TxtKommentar.Text
Kundennummer = TxtKundennummer.Text
KanalNeuSpeichern = FreeFile
LblStatus.Caption = "Status: Neue Datei wird erstellt..."
Open PfadNeuSpeichern For Append As KanalNeuSpeichern
LblStatus.Caption = "Status: Daten werden geschrieben..."
Write #KanalNeuSpeichern, "[Neuer Kunde:]" & vbNewLine, Datensatz(1, 1), Datensatz(1, 2), Datensatz(1, 3), Datensatz(1, 4), Datensatz(1, 5), Datensatz(1, 6), Datensatz(1, 7), Datensatz(1, 8), Datensatz(1, 9), Datensatz(1, 10), Datensatz(1, 11), Datensatz(1, 12) & vbNewLine
LblStatus.Caption = "Status: Daten geschrieben!"
Close KanalNeuSpeichern
Aber nun schnell weiter, denn ich überprüfe die geschriebenen Dateien immer und daran liegt wirklich nicht das Problem.
Hier der Code für das Lesen der Datei:
Code:
Dim i As Integer
Dim j As Integer
i = 0
j = 0
Open PfadLaden For Input As KanalLaden
'Schleife(Achtung!) für das Lesen der Daten:
Do While EOF(KanalLaden) = True
Input #KanalLaden, LEER 'Der Platzhalter für '[Neuer Kunde:]
Input #KanalLaden, Datensatz(j, i)
i = i + 1
Input #KanalLaden, Datensatz(j, i)
i = i + 1
Input #KanalLaden, Datensatz(j, i)
i = i + 1
Input #KanalLaden, Datensatz(j, i)
i = i + 1
Input #KanalLaden, Datensatz(j, i)
i = i + 1
Input #KanalLaden, Datensatz(j, i)
i = i + 1
Input #KanalLaden, Datensatz(j, i)
i = i + 1
Input #KanalLaden, Datensatz(j, i)
i = i + 1
Input #KanalLaden, Datensatz(j, i)
i = i + 1
Input #KanalLaden, Datensatz(j, i)
i = i + 1
Input #KanalLaden, Datensatz(j, i)
i = i + 1
Input #KanalLaden, Datensatz(j, i)
i = i + 1
Input #KanalLaden, Datensatz(j, i)
j = j + 1 'Einen Datensatz addieren, weil der nächste dran ist
i = 0
Loop
'Mir soll angezeigt werden, ob irgendetwas gelesen wird:
Dim
popo = 0
For popo = popo To 12
MsgBox "Erster Datensatz, diverse:" & Datensatz(0, popo) & vbNewLine & " = " & , vbInformation, "Einige Daten:"
Next popo
Close KanalLaden
So, jetzt kommt mein Appell an euch. Ich hoffe, dass ihr mir soweit helfen könnt, dass ich weiß, wie ich die Indexes - in Verbindung mit dem Lesen von geschriebenen Dateien - benutzen kann. Ich werde dann, bei einem funktionierenden Code die Messagebox am Schluss der Lesefunktion durch Zuweisungen in Labels und Listboxes umändern. Aber bitte schreibt mir, warum es den weiteren Verlauf der Speicherung nicht ließt !
Meine Vermutung:
Also ich denke mal, dass das Problem an den vielen Input-Funktionen liegt, die ja eigentlich immer wieder zurück an den ersten Eintrag der Datei verwiesen werden. Aber ich habe echt keinen Plan, wie ich die Variablen aneinander knüpfen kann und dabei auch noch das Erhöhen der Indexe mache - ausgenommen tausende von Variablen zu deklarieren, aber klar: Das möchte ich natürlich nicht !
Ich habe schon die Forensuche benutzt, aber dadurch nur gelernt, wie man EOF benutzt.
Ihr habt mir schon so oft weitergeholfen, deshalb danke ich euch schon jetzt vielmals im Voraus. Und vielen Dank auch für das Lesen meines langen Textes :
Da' Hacker