Mehrere Daten durch Checkboxauswahlen in txtdatei schreiben

  • VB.NET
  • .NET (FX) 4.0

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von mrMo.

    Mehrere Daten durch Checkboxauswahlen in txtdatei schreiben

    Moin,

    Ich hole von einer Datei einige Metadaten(ca 16 Stück)

    Jetzt habe ich 16 Checkboxen.

    mit :

    VB.NET-Quellcode

    1. For Each ChkB As Control In Me.GBAllg.Controls
    2. If TypeOf ChkB Is CheckBox Then
    3. If DirectCast(ChkB, CheckBox).Checked = True Then
    4. ListBox1.Items.Add(ChkB.Name)
    5. End If
    6. End If
    7. Next

    kann ich ja abfragen welche Checkboxen ausgewählt wurden.

    Wie bekomme ich es jetzt hin, dass ich nur die ausgewählten Daten in eine Textdatei schreibe?

    Z.B. wähle ich aus : "Titel" "Name" "Tag"

    Das ganze mache ich mit einem Streamwriter
    jetzt möchte ich, dass in die Textdatei nur reingeschriben wird:

    sw.writeLine("Titel" & vbtab & "Name" & vbtab & "Tag")
    for each fileusw
    sw.writeLine(titel & vbtab & name & vbtab & tag

    Ich möchte, dass jeweils die Daten geschrieben werden, die ich ausgewählt habe.

    Muss ich jetzt für jede Variante

    VB.NET-Quellcode

    1. if CBTitel.checked=true then
    2. sw.writeLine(titel)
    3. elseif CBTitel.checked=true AND VBName.checked=true then
    4. sw.Writeline(titel &vbtab & name)

    usw....

    schreiben?

    Bitte befreit mich aus diesem Blackout. Die Lösung ist sicher kinderleicht :o
    ~Wir leben zwar alle unter dem gleichen Himmel, aber es haben nicht alle den gleichen Horizont~
    Ich weiß zwar nicht, warum du die Checkboxen in die ListBox füllst, aber mit sowas könntest du dein Problem evtl. Lösen (ungetestet aus der Hüfte geschossen)

    VB.NET-Quellcode

    1. DIm sInfos As String
    2. if CBTitel.checked then sInfos += Titel & vbtab
    3. if VBName.checked then sInfos += Name & vbtab
    4. if XYZ.checked then sInfos += BlaBlaBlub & vbtab
    5. usw...
    6. sw.Writeline(sInfos )
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen
    @razzzer530i Ggf. wäre eine CheckListBox für Dich eine Alternative.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Sagte ja...Blackout. So leicht und lächerlich. Ich fülle die Checkbox texte nur in die Listbox, da ich die entstandene Datei auch in Excel importiere. Habe das ganze einfach ein bisschen flexibler gemacht.
    ich weiß, unnötig viel Code, aber da es flexibel ist habe ich das mit:

    Spoiler anzeigen
    [/vbnet]
    dim Dataxc As New List(Of Strings)()
    Dim toppingsx As String = ""
    'Allgemein
    If Form1.Allgname.Checked = True Then
    toppingsx &= Form1.Allgname.Text & vbTab
    End If
    If Form1.AllgTyp.Checked = True Then 'Typ
    toppingsx &= Form1.AllgTyp.Text & vbTab
    End If

    If Form1.AllgGroesse.Checked = True Then 'Name
    toppingsx &= Form1.AllgGroesse.Text & vbTab
    End If
    If Form1.AllgOrt.Checked = True Then 'Pfad
    toppingsx &= Form1.AllgOrt.Text & vbTab
    End If
    If Form1.AllgErstellt.Checked = True Then 'Erstellungsdatum
    toppingsx &= Form1.AllgErstellt.Text & vbTab
    End If
    If Form1.Allggeaendert.Checked = True Then 'Änderungsdatum
    toppingsx &= Form1.Allggeaendert.Text & vbTab
    End If
    If Form1.Allglz.Checked = True Then 'Letzter Zugriff
    toppingsx &= Form1.Allglz.Text & vbTab
    End If

    'PDF
    If Form1.PDFAuthor.Checked = True Then
    toppingsx &= Form1.PDFAuthor.Text & vbTab
    End If
    If Form1.PDFTitel.Checked = True Then
    toppingsx &= Form1.PDFTitel.Text & vbTab
    End If
    If Form1.PDFCreationDate.Checked = True Then
    toppingsx &= Form1.PDFCreationDate.Text & vbTab
    End If
    If Form1.PDFBearbeitugnsd.Checked = True Then
    toppingsx &= Form1.PDFBearbeitugnsd.Text & vbTab
    End If
    If Form1.PDFErstlprg.Checked = True Then
    toppingsx &= Form1.PDFErstlprg.Text & vbTab
    End If

    If toppingsx <> "" Then
    Dataxc.Add(toppingsx)
    [/vbnet][/spoiler}

    gemacht.
    ~Wir leben zwar alle unter dem gleichen Himmel, aber es haben nicht alle den gleichen Horizont~
    if (Form1.PDFAuthor.Checked = True) Then ist unnötig
    If (PDFAuthor.Checked) reicht schon ;)
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen