2016-04-09 15 views
0

Ich versuche eine Flatfile-Datenbank für meine VB.NET-Anwendung zu erstellen, und da es sich um ein kleines Schulprojekt handelt, brauche ich keine MySQL-Datenbank. Ich programmiere in Visual Basic und ich frage mich, wie ich Benutzerinformationen (Benutzername, Passwort) in einer Textdatei speichern, durch Tab getrennt und dann beim Login lesen konnte. Grundsätzlich ein Login/Registrierungssystem mit einer Flat-File-Datenbank . Hat jemand irgendwelche Vorschläge, wo man beginnt und wie man Daten durch Tabulator trennt und sogar Tabulatoren beim Lesen von Daten ignoriert?Erstellen einer Flatfile-Datenbank

Vielen Dank, im Voraus.

+1

Warum getrennt durch Tabulatoren? Sehen Sie sich stattdessen _ [Binäre Serialisierung] (http://www.codeproject.com/Articles/254617/Serialization-Part-I-Binary-Serialization) _ an. Es ist viel effizienter, wenn Sie Klassen mit Eigenschaften/Feldern verwenden, die Ihnen eine bessere Datenstruktur geben. –

+0

Danke, werde ich. – Eldarz1

Antwort

0

Dies sollte für Sie von Nutzen sein.

Lesen der Daten:

Dim ofd1 As New OpenFileDialog 
if ofd1.ShowDialog() = DialogResult.OK then 

Dim reader As New StreamReader(ofd1.FileName) 
Do While reader.Peek() >= 0 
Dim curline As String = reader.ReadLine() 
Dim vals() As String = curline.Split(vbTab) 
    Dim username as string = vals(0) 
    Dim password as string = vals(1) 

    MessageBox.Show("username: " & username) 
    MessageBox.Show("password: " & password) 

     Loop 
     reader.Close() 
    end if 

datei.txt

username1(tab)password1 
username2(tab)password2 
+0

** Zuerst, _und am wichtigsten_ von allen **, müssen Sie ** überprüfen, ob 'ofd1.ShowDialog()' zu 'DialogResult.OK' auswertet. Das bedeutet, dass der Benutzer eine Datei ausgewählt und gedrückt hat, um sie zu öffnen. Wenn Sie es nicht tun, werden Sie in Schwierigkeiten geraten, wenn der Benutzer entscheidet, die Eröffnung zu stornieren. --- Dies kann über eine einfache 'If'-Anweisung erfolgen:' If ofd1.ShowDialog = DialogResult.OK Then'. –

+0

Zweitens, während 'Not curline Is Nothing' (oder' curline IsNot Nothing') funktioniert, um zu überprüfen, wenn es nichts mehr zu lesen gibt, würde ich eher empfehlen, stattdessen "Not reader.EndOfStream" zu verwenden. Die 'EndOfStream'-Eigenschaft wird Ihnen sagen, wann der Stream das Ende erreicht hat, d. H. Wenn nichts mehr von der Datei zu lesen ist. –

+0

Ich liebe die Split-Methode. Als ich die Techniken, die ich jetzt mache, nicht vollständig verstanden habe, habe ich {{IfAnybodyIncludesThisExactTextInOneOfTheirEntriesIWillF ** KINGCUTYOU !!}} als Trennzeichen verwendet, wenn ich Anwendungen für das Unternehmen verwende. – ThatGuy