Visual Basic 2010 Textboxen in einem Textdokument

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 61 Antworten in diesem Thema. Der letzte Beitrag () ist von Andy16823.

    Visual Basic 2010 Textboxen in einem Textdokument

    Hallo zusammen.

    Ich bastel grade mein eigens Programm ( You dont say :O) und bin hier an einem Punkt angelangt wo ich nicht weiterkomme.
    Undzwar will ich bei meinem Programm in 4 Textboxen (Textbox1 - 4) Daten eingeben und am schluss speichern. Diese 4 Textboxdaten
    sollten alle in einer Datei gespeichert werden. Der Titel soll das Datum sein.

    Ich hab schon was zusammengebracht. Das ist aber nur für ne Richtextbox :(

    Quellcode

    1. Try
    2. Dim dlg As SaveFileDialog = New SaveFileDialog
    3. dlg.Title = "Save"
    4. dlg.Filter = "Rich Text files (*.rtf) *.rtf"
    5. If dlg.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
    6. (Hier fehlt irgendein ausdruck den ich auf halben weg verloren habe ^^. Ich glaub es war irgendwas mit Richtextbox...)
    7. End If
    8. Catch ex As Exception : End Try
    9. End Sub


    Wäre nett wenn ihr mir helfen könntet.

    PS: Ja ich bin neu :P

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „AElias123“ ()

    Schau dir mal bitte folgendes an ;) : Wie füge ich Quellcode korrekt im Forum ein?

    Um Dateien zu speichern, nutze doch folgende Klasse: msdn.microsoft.com/de-de/libra…em.io.file(v=vs.110).aspx
    Und um das Datum auszulesen, bietet sich folgendes an: msdn.microsoft.com/de-de/libra…tetime.now(v=vs.110).aspx

    Dein Ausdruck, den du verloren hast, war warscheinlich RichTextBoxX.Save. Das gibt es bei einer TextBox nicht, aber es gibt die Text-Property, welche dir den Text der TextBox liefert.

    LG
    @ErfinderDesRades hat sich bei seinen Videos echt mühe gegeben! In seinem Beitrag hat er aber auch folgenden Verlinkt: Welche BBCodes (Tags) sind im Forum verfügbar? (Anleitung zur Benutzung)

    Wenn du Videos nicht so magst ;)

    LG
    Ich hab nicht gesagt das ich es nicht mag.
    Ich hab nur keine Zeit. Bin in der Arbeit und soll das Programmieren auf
    eigene Faust lernen :)

    LG

    PS: Mit dem Link den du mir gegeben hast msdn.microsoft.com/de-de/libra…em.io.file(v=vs.110).aspx kann ich leider
    nichts anfangen. Kenn mich zu wenig aus als ob ich wüsste was ich brauche ...
    Die Hilfe hast du ja jetzt ;)

    Du hast aber das Buch VBA für Dummies verlinkt und VBA und VB.NET sind definitiv nicht das gleiche!!! Und AntMe ist eher an Einsteiger gerichtet, soviel Ich weiß (korrigiert mich bitte, falls Ich falsch liege), werden dort Sachen wie Polymorphie, Verkapselung etc. nicht behandelt, was eigentlich schade ist, aber das hat eben nichts mehr mit den Ameisen zu tun... Das Buch, das Ich dir verlinkt habe musst du dir natürlich nicht durchlesen, aber es ist auch ganz nützlich als Referenz, falls du mal vergessen hast, wie etwas geht. Es ist gut erklärt, kostenlos und behandelt richtig viel auf seinen 1000 Seiten!

    LG
    Mein fehler ich hab das .Net .. Falsch verlinkt.
    Ok danke. Nunja Kannst du mir sagen wonach ich eigentlich suchen soll. Weil
    bis ich diese 1000 seiten durchgelesen habe bin ich mit dem Monat fertig und
    hab noch kein programm geschrieben ^^

    Allein das Inhaltsverzeichnis erstreckt sich über 17 seiten :O !

    LG
    Das was du für dein Problem/Vorhaben brauchst sind lediglich ein paar Grundlagen. Du solltest wissen, was einen String von einem Integer unterscheidet und du solltest wissen was Instanzierung ist bzw. wie man diese anwendet. Was dann noch fehlt ist der Namespace System.IO sprich Streamwriter und Streamreader. Dafür brauchst du keine 1000 Seiten zu lesen. Allerdings bedeutet das nicht, dass du dir diese nicht im Laufe der Zeit aneignen solltest ^^ LG
    Ach kommt schon :( Nur weil du jetzt mit ausdrücken wie
    System.IO sprich Streamwriter und Streamreader
    kommst heißt
    das noch lange nicht das ich das verstehe bzw wo ich das nachlesen kann. Ich
    brauch doch nur einen einfachen code und bekomm ein 1000 seitiges buch aufgedrückt. Klar
    muss ich das lesen damit ich mich auskenn, aber wenn man einen Code braucht und dann sowas aufgedrückt bekommt
    fühlt man sich richtig entmutigt. Ich lerne ja mit der zeit und ich werde das sicher irgendwan durchlesen aber nicht aufeinmal
    und nicht alles. Ich werde einzelne kapiteln durchlesen aber auch nur dann wenn ich mich da überhaupt auskenne. Ich weiß
    nicht was ich brauch und was nicht.

    Das einzig hilfreich war von @ichduersie der Link. Und selbst da weiß ich nicht was ich mit anfangen soll
    dann glaubst weil du System.IO schreibst dass ich weiß in welchen Kapitel ich suchen soll?

    *Seufzer*

    PS: WriteAllLines(String, IEnumerable(Of String))Erstellt eine neue Datei, schreibt eine Auflistung von Zeichenfolgen in die Datei und schließt dann die Datei.
    Ist das was ich brauche?
    Hier im Forum möchte dich keiner runtermachen :!: , bei manchen kommts nur so rüber... ;)

    Wie gesagt, zum speichern schau dir diese Klasse an: msdn.microsoft.com/de-de/libra…em.io.file(v=vs.110).aspx

    Da gibt es so schöne Funktionen wie WriteAllText. Damit kannst du Texte Strings in Dateien abspeichern und du benötigst keine StreamWriter! Der Namespace System.IO liefert generell alle Klassen und Funktionen, um mit dem Dateisystem zu arbeiten, daher kommst du auch nicht um ihn rum.

    Ich habe dir hier extra das nochmal rausgesucht, wie man speichert: msdn.microsoft.com/de-de/library/ms143375(v=vs.110).aspx Da ist alles erklärt und mit Beispielen.

    LG
    @ichduersie Danke erstmal. Das was du mir geschickt hast ist ziemlich hilfreich gewesen. Ich
    hab den Code

    Quellcode

    1. Dim path As String = "c:\temp\MyTest.txt"
    2. ' This text is added only once to the file.
    3. If File.Exists(path) = False Then
    4. ' Create a file to write to.
    5. Dim createText As String = "Hello and Welcome" + Environment.NewLine
    6. File.WriteAllText(path, createText)
    7. End If
    8. ' This text is always added, making the file longer over time
    9. ' if it is not deleted.
    10. Dim appendText As String = "This is extra text" + Environment.NewLine
    11. File.AppendAllText(path, appendText)
    12. ' Open the file to read from.
    13. Dim readText As String = File.ReadAllText(path)
    14. Console.WriteLine(readText)

    erstmal auf einen Button gesetzt. So was ich jetzt eigentlich wollte ist nicht das
    der text kommt sondern die 11 Textbox. Die sollen gespeichert werden.

    Das ist meine frage. Wie kann ich den inhalt von 11 textboxen speichern.

    LG
    Was du konkret davon brauchst ist lediglich

    VB.NET-Quellcode

    1. Dim path As String = "c:\temp\MyTest.txt"
    2. If File.Exists(path) = False Then
    3. Dim createText As String = Textbox1.Text & vbcrLf & Textbox2.Text & Textbox3.Text & Textbox4.Text
    4. createtext = createtext & vbcrLf & Textbox5.Text & vbcrLf & Textbox7.Text 'usw.
    5. File.WriteAllText(path, createText)
    6. End If

    Das ist der Code zum Speichern. Fürs laden würde ich allerdings einen Streamreader nehmen, da du die Textboxen gleich befüllen kannst.

    VB.NET-Quellcode

    1. ​Using reader as IO.Streamreader
    2. Textbox1.Text = reader.ReadLine()
    3. Textbox2.Text = reader.ReadLine()
    4. 'usw.
    5. reader.Close() 'um die Datei freizugeben
    6. End Using


    Das Ganze ordentlich eingebunden und schon hast du das, was du wolltest. LG
    @ChOoSeMyNaMe
    Gut bin hier halbwegs zurecht gekommen. Nur brauch ich 10 textboxen und kann das nicht selbst einsetzten weil nicht weiß wann ich vbcrLf einsetzen muss.

    bzw ist das nicht nachvollziehbar

    LG

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „AElias123“ ()

    1. Wenn du System.IO importierst musst du nur noch Streamreader schreiben nicht IO.Streamreader
    2. Mit "Using" wird reader vorrüber gehend als Variable/Streamreader geführt, solange bis Using endet sprich du brauchst keine extra Variable.
    3. Du hast das Ganze in einen Button gepackt. Was dann passiert ist, dass du die Textdatei schreibst und gleich danach wieder ausliest. Besser du packst es in zwei Buttons(Speichern und Auslesen)
    4. Du musst noch createtext ändern siehe mein Post, ansonsten klappt es nicht. Denn du bekommst event. einen Fehler, dass die Datei nicht so viele Zeilen besitzt.
    5. Du lernst mehr und vorallem das Richtige, wenn du nicht C&P benutzt sondern versuchst den Code umzuschreiben.

    LG

    Edit: vbCrLf ist lediglich ein Hinweis für VB.Net, dass an dieser Stelle eine neue Zeile gemacht werden soll und alles danach in die neue Zeile kommt.
    Edit^2: Beispiel:
    Ohne vbCrLf:

    VB.NET-Quellcode

    1. ​Dim text as String = "Hallo, ich bin ein Beispiel."

    Dann steht in text: "Hallo, ich bin ein Beispiel."

    Mit vbCrLf:

    VB.NET-Quellcode

    1. Dim text as String = "Hallo," & vbCrLf & " ich bin ein Beispiel."

    Dann steht in text: "Hallo,
    ich bin ein Beispiel."

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ChOoSeMyNaMe“ ()