Zuffallsnamen aus ordner erzeugen

  • VB.NET

Es gibt 14 Antworten in diesem Thema. Der letzte Beitrag () ist von exc-jdbi.

    Zuffallsnamen aus ordner erzeugen

    hallo zusammen könnte hilfe gebrauchen

    und zwar möchte ich aus einem ordner mit 20 namen 10 zuffällige namen erzeugen kann mir da jemand tips geben


    ich habe ein Program mit vb.net erstellt womit ich einen Ordner mit 20 namen erstelle dann habe ich 10 Textboxen wo ich 10 von den 20 namen zuffällig erzeugen möchte
    Bilder
    • 1122.JPG

      78,82 kB, 1.131×579, 122 mal angesehen
    Ich bin mir grad nicht sicher was die Problemstellung ist.

    Willst du Ordner mit zufälligen Namen erzeugen? Oder Dateien? Oder nur Texte?

    Und was meinst du mit "ein Ordner mit 20 Namen"? Ein Ordner kann nur einen Namen haben.
    SWYgeW91IGNhbiByZWFkIHRoaXMsIHlvdSdyZSBhIGdlZWsgOkQ=

    Weil einfach, einfach zu einfach ist! :D
    das mit dem ordner erstellen ist kein problem das bekomme ich hin

    also ich erstelle ein ordner und darein speichere ich 20 namen

    von den 20 namen möchte ich 10 zuffällige in den 10 textboxen ausgeben

    allerdings möchte ich nicht das die gleichen 10 namen nochmal erzeugt werden also ein name sollte wenigstens immer abweichen
    Public Class Generieren
    Private rnd As New Random
    Private Sub BtnSpeichern_Click(sender As System.Object, e As System.EventArgs) Handles BtnSpeichern.Click
    If My.Computer.FileSystem.DirectoryExists("C:\FussballManschaften\" + TextBox1.Text) Then
    MsgBox("Fehler die Manschaft ist bereits vorhanden")
    Else
    MkDir("C:\FussballManschaften\" + TextBox1.Text)

    Dim a As New System.IO.StreamWriter("C:\FussballManschaften\" + TextBox1.Text + "\FussballManschaften.txt")

    a.WriteLine(TextBox1.Text)
    a.Close()
    End If
    End Sub

    Private Sub BtnTipErzeugen_Click(sender As System.Object, e As System.EventArgs) Handles BtnTipErzeugen.Click

    End Sub
    End Class
    Was willst du damit denn bezwecken? Vielleicht lässt sich das Ganze ja anders lösen.

    Zum Random String generieren gibts zwei Möglichkeiten.

    1)
    Du erstellst eine Liste mit allen Buchstaben und holst dir in einer Schleife mit rnd.Next(list.Count) den Index für den nächsten Buchstaben. Danach nimmst du diesen Buchstaben und fügst ihn an das Ergenis hinten an

    2)
    Du holst dir in einer Schleife mit rnd.Next einen Wert zwischen dem Integer Wert des Startbuchstaben und dem Integer Wert des Endbuchstaben, konvertierst diesen zu einem Char und fügst diesen an das Ergebnis hinten an

    Allerdings kommen dabei ziemlich sinnlose Namen heraus.

    P.S.: Das nächste mal bitte den Code-Tag verwenden.
    z.B.:

    VB.NET-Quellcode

    1. ​Dim x As Integer
    SWYgeW91IGNhbiByZWFkIHRoaXMsIHlvdSdyZSBhIGdlZWsgOkQ=

    Weil einfach, einfach zu einfach ist! :D
    ja ich möchte aus dem ordner wo ich 20 namen rein speichere

    10 er kombinationen
    ok gebe mal ein beispiel ordner mit 6 namen

    1,Torsten, 2 Timo, 3 Rolf, 4 Tim, 5 Tom, 6 Bernd

    jetzt mochte ich aus dem ordner 3 zuffällige namen

    1, Bernd 2, Tom 3, Tim
    1, Bernd 2, Timo 3, Rolf usw

    aber nicht die gleiche kombination
    ich meine möchte nicht zweimal Bernd Tom Tim

    patty schrieb:

    wo ich 20 namen rein speichere
    Wie liegen die Namen da rum?
    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!
    Definiere

    patty schrieb:

    aus dem ordner
    Du stellst hier eine Frage, wir wollen Dir helfen.
    Es ist sehr unproduktiv und unbefriedigend, wenn wir Dir jede kleine Information aus der Nase ziehen müssen.
    Wir tun das freiwillig und aus Freude am Helfen, und für Dich kostenlos.
    Hilf uns also, Dir so zu helfen, wie Du es erwartest.
    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!
    Abend patty

    Da würde ich in etwa so vorgehen.
    Mach dir eine Function z.B. mit dem Namen CreateFolder
    - Sieh dir dazu DirectoryInfo, di.Exists, di.Create, di.CreateSubdirectory an
    - Letzeres kann man in einer Schleife stellen

    Mach dir eine Function z.B. mit dem Namen GetRndFolderName
    - Du braucht eine Random
    - Erstell dir zwei List(of DirectoryInfo)
    - Setze alle Unterverzeichnisse in eines der ListOf
    - Sieh dir dazu DirectoryInfo und di.GetDirectories
    - mach eine While Schleife mit lst.count > 0
    - In der Schleife mit rnd.next einen Index wählen (Anafangbereich 10)
    - Während du bei einer ListOf die DirectoryInfos dazuzählst, zählst du sie bei der anderen ab.
    - Gewünschet Anzahl zurückgeben

    Jetzt musst du die Namen der DiretorInfos in der Liste nur noch in deine Textboxes schreiben

    Feddich

    Freundliche Grüsse

    exc-jdbi

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „exc-jdbi“ ()