[TuT] Mit den dateidialogen auf eine Textdatei zugreifen

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • [TuT] Mit den dateidialogen auf eine Textdatei zugreifen

      Vorweg: Ihr müsst Visual Basic 2010 haben um die Projekt datei zu nutzen. Andernfalls einfach selbstcoden^^
      =========================

      In diesem TuT werde ich euch beschreiben wie ihrwie der titel sagt auf dateien zugreifen könnt.

      =========================
      =========================

      •Was wir brauchen
      - Eine Textbox (MultiLine = True)
      - Ein MenuStrip
      - Ein OpenFileDialog
      - Ein SaveFileDialog

      =========================
      =========================

      =========================
      =========================

      Zuerst brauchen wir die System.IO
      Dieser Text kommt über Public Class Form1.
      Imports System.IO


      Der Dateipfad wird zweckgemäß auf Klassenebene deklariert:
      Private pfad as String


      Die zahlreichen Anfangseigenschaften der beiden DateiDialoge legen wir beim laden von Form1 fest. Die meisten Eigenschaften gelten für OpenFileDialog sowie für SaveFileDialog, weshalb ich sie nur einmal erkläre.
      Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load


      Zunächst der ÖffnenDialog, wir beginnen mit dem Festlegen der Standart-Dateinamens-erweiterung:
      With OpenFileDialog1
      .DefaultExt = "txt"


      Die Filterzeichenfolge:
      .Filter = "Textdateien (*.txt)|*.txt|Alle Dateien (*.*)|*.*"


      Warnung, wenn der Namen einer nicht vorhandenen Datei eingegeben wird:
      .CheckFileExist = True


      Das Anfangsverzeichnis:
      .InitialDirectory = Application.ExecutablePath


      Die Beschriftung der Titelleiste des Dialogs:
      .Title = "Bitte öffnen Sie eine Textdatei!"
      End With


      =====================================================
      =====================================================
      Der Gesamte SourceCode sieht bisher so aus.

      Imports System.IO
      Public Class Form1

      Private pfad As String

      Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
      With OpenFileDialog1
      .DefaultExt = "txt"
      .Filter = "Textdateien (*.txt)|*.txt|Allei Dateien (*.*)|*.*)"
      .CheckFileExists = True
      .InitialDirectory = Application.ExecutablePath
      .Title = "Bitte öffnen Sie eine Textdatei!"
      End With
      End Sub
      End Class

      =====================================================
      =====================================================

      Nun zum Speichern-Dialog:
      With SaveFileDialog1
      .DefaultExt = "txt"


      Der standartmäßig eingetrage Dateiname:
      .Filename = "Beispiel.txt"


      Automatisches Anhängen der DefaultExt, falls diese weggelassen wird:
      .AddExtension = True


      Warnung, wenn beireits eine datei mit dem selben namen vorhanden ist:
      .OverwritePrompt = True


      Überprüfen, ob Dateiname erlaubte Zeichen enthält:
      .ValidateName = True


      Weitere Einstellungen:
      .Filter = "Textdateien (*.txt)|*.txt|Alle Dateien (*.*)|*.*)"
      .InitialDirectory = Application.ExecutablePath
      .Title = "Bitte speichern Sie die Textdatei!"
      End With


      =====================================================
      =====================================================
      Der Gesamte SourceCode sieht momentan so aus:
      Imports System.IO
      Public Class Form1

      Private pfad As String

      Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
      With OpenFileDialog1
      .DefaultExt = "txt"
      .Filter = "Textdateien (*.txt)|*.txt|Allei Dateien (*.*)|*.*)"
      .CheckFileExists = True
      .InitialDirectory = Application.ExecutablePath
      .Title = "Bitte öffnen Sie eine Textdatei!"
      End With
      With SaveFileDialog1
      .DefaultExt = "txt"
      .FileName = "Beispiel.txt"
      .AddExtension = True
      .OverwritePrompt = True
      .ValidateNames = True
      .Filter = "Textdateien (*.txt)|*.txt|Allei Dateien (*.*)|*.*)"
      .InitialDirectory = Application.ExecutablePath
      .Title = "Bitte speichern Sie eine Textdatei!"
      End With
      End Sub
      End Class

      =====================================================
      =====================================================

      Nun klicken wir doppel im Menü "Datei" aud die "Öffnen" und machen mit dem punkt weiter. Fügen dann das ein:
      If OpenFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
      pfad = OpenFileDialog1.FileName
      TextBox1.Text = String.Empty
      Try
      TextBox1.Text = File.ReadAllText(pfad)
      Catch
      End Try
      End If


      Nun machen wir das Selbe mit dem Speichern menü aber geben diesen Code ein:
      If SaveFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
      pfad = SaveFileDialog1.FileName
      File.WriteAllText(pfad, TextBox1.Text)
      End If


      Nun noch das Beenden menü:
      Me.Close()


      =====================================================
      =====================================================
      Das ist der Endgültige SourceCode:
      Imports System.IO
      Public Class Form1

      Private pfad As String

      Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
      With OpenFileDialog1
      .DefaultExt = "txt"
      .Filter = "Textdateien (*.txt)|*.txt|Allei Dateien (*.*)|*.*)"
      .CheckFileExists = True
      .InitialDirectory = Application.ExecutablePath
      .Title = "Bitte öffnen Sie eine Textdatei!"
      End With
      With SaveFileDialog1
      .DefaultExt = "txt"
      .FileName = "Beispiel.txt"
      .AddExtension = True
      .OverwritePrompt = True
      .ValidateNames = True
      .Filter = "Textdateien (*.txt)|*.txt|Allei Dateien (*.*)|*.*)"
      .InitialDirectory = Application.ExecutablePath
      .Title = "Bitte speichern Sie eine Textdatei!"
      End With
      End Sub

      Private Sub ÖffnenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ÖffnenToolStripMenuItem.Click
      If OpenFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
      pfad = OpenFileDialog1.FileName
      TextBox1.Text = String.Empty
      Try
      TextBox1.Text = File.ReadAllText(pfad)
      Catch
      End Try
      End If
      End Sub

      Private Sub SpeichernToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SpeichernToolStripMenuItem.Click
      If SaveFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
      pfad = SaveFileDialog1.FileName
      File.WriteAllText(pfad, TextBox1.Text)
      End If
      End Sub

      Private Sub BeendenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BeendenToolStripMenuItem.Click
      Me.Close()
      End Sub
      End Class

      =====================================================
      =====================================================

      Hier nochmal das Projekt als Datei.

      Download
      Tutorial R8.1

      Virustotal
      Klick Mich Ergebnis (1/41) ' Das auch nur weil es ein Archiv ist.

      Credits: Sedrika
    • Werbung zur Unterstützung des Forums ( Bitte AddBlocker deaktivieren )

    • Segruu;86898 schrieb:

      Nettes Tutorial gut geschrieben!
      Nur VB2010 wird noch von sehr wenigen benutzt ;)


      Das ist nicht wichtig. Man kann den Code auch selber abarbeiten und dann geht es auch mit vb08^^
      Um das Projekt zu öffnenim DL muss man vb2010 haben sons net.

      Zer0;86906 schrieb:

      [COLOR="DarkRed"]Für die Mühe hast n Thanks :P[/COLOR]


      Es geht mir nicht um die mühe sondern darum, das dieser Bereich etwas mehr hat^^
    • Du machst dir die muhe den OFD un SFD im editor zu erstellen aber machst die Einstellung im Code das finde ich unnötig. Du erklärst am Anfang gut aber beim offnen und speichern sind die Befehle schlecht/nicht eklart.
      Und der titel ist schlecht gewählt da die Dialoge ein Hilfsmittel sind damit der user den Pfad nicht auswendig können muss aber mit dem zugrif haben sieletzendlich nichts zutun
    • ichbinniemand;86996 schrieb:

      Du machst dir die muhe den OFD un SFD im editor zu erstellen aber machst die Einstellung im Code das finde ich unnötig. Du erklärst am Anfang gut aber beim offnen und speichern sind die Befehle schlecht/nicht eklart.
      Und der titel ist schlecht gewählt da die Dialoge ein Hilfsmittel sind damit der user den Pfad nicht auswendig können muss aber mit dem zugrif haben sieletzendlich nichts zutun


      Ich komm gerade mit dem Text nicht klar^^
      Wenn du meinst das ich nicht beschrieben habe das
      If SaveFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
      pfad = SaveFileDialog1.FileName
      File.WriteAllText(pfad, TextBox1.Text)
      End If


      Zum speichern des Pfades ist und das die Textbox1 gespeichert wird, dann hast du recht aber mann kann auch als anfänger gedanken machen was dieser code machen würde^^