VisualBasic Zufällige Datei auswählen

MoraX

Lt. Commander
Registriert
Aug. 2008
Beiträge
1.156
Hi!

Ich bin ziemlich neu im Programmieren und möchte jetzt gerne lernen =)
ich will ein kleines Programm schreiben, welches mir aus einem Ordner ein zufälliges Video raussucht und dieses dann abspielt.

Den Browser wo der Ordner ausgewählt wird habe ich samt Textfeld schon einigermaßen hingebracht.
Jetzt habe ich einen neuen Button und ein neues Textfeld. Was muss ich jetzt tun dass wenn ich auf den neuen Button "Choose Random" klicke er eine zufällige Datei aus dem obigen Ordner auswählt und mir den Dateinamen im Textfeld 2 anzeigt?


greetz
 
Das ist nich sonderlich einfach für ein "Anfänger" umzusetzten....

Du musst alle Datein im Ordner auslesen & prüfen ob sie eine Video-Datei ist.
Wenn das der Fall ist würde ich den Pfad in einer Liste speichern.
Anschließen solltest du eine Zufallszahl bis max. Anzahl der verfügbaren Videos generieren & diese dann abspielen.

Falls du überhaupt keinen Schimmer hast wie das funktionieren soll...
ist das ein Tick zu schwer :P

Du wirst aber auf jedenfall den Verweis System.IO benötigen
 
danke das buch habe ich heute schon bestellt ;)

wollte nur etwas hilfe explizit für diese Sache

greetz
 
Irgendwo müssen deine Dateien als Liste gespeichert werden, wenn sie's noch nicht sind (List, Array, ListBox, etc.). Die Größe der Liste kann man sich holen, meistens liefern .Length oder .Count diesen Wert, also z.B. 10. Deine Zufallszahl sollte also nicht größer als 10 sein, Random-Funktionen liefern in der Regel aber Werte zwischen 0 und 1, also einfach mit der Anzahl der Elemente in deiner Liste multiplizieren - fertig. Dann kriegst du als Wert z.B. 7, also musst du das Element Nummer 7 in der Liste ansprechen... gibt teilweise Funktionen wie ElementAt() oder über .Items(x) oder ähnliches. Kommt drauf an was für nen Datentyp die Liste hat.
 
relativ einfach umzusetzen
einfach zählen wieviele videodatein im ordner liegen
dann eine randomzahl zwischen 1 und der anzahl ausgeben lassen
und genau diese datei auswählen ;P
 
Hier mal auf die Schnelle ein Code für ne Konsolen-Applikation

Code:
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Text
Imports System.IO
Imports System.Diagnostics

Namespace TestApp
	Class Program
		Private Shared Sub Main(args As String())
			Dim inputDir As String = "D:\Movies"
			Dim list As New List(Of String)()

			If Directory.Exists(inputDir) Then
				Dim di = New DirectoryInfo(inputDir)
				For Each fi As FileInfo In di.GetFiles()
					Dim ext = fi.Extension.ToString().ToLower()
					If ext.Equals(".avi") OrElse ext.Equals(".flv") OrElse ext.Equals(".mpg") OrElse ext.Equals(".wmv") Then
						' Erweiterbar
						Console.WriteLine(fi.Name)
						list.Add(fi.FullName)
					End If
				Next
				If list.Count() > 0 Then
					Dim rnd As New Random()
					Dim rndNumber As Integer = rnd.[Next](0, list.Count - 1)
					Console.WriteLine("Starte Video: {0}", list(rndNumber))
					Process.Start(list(rndNumber))
				Else
					Console.WriteLine("Der angegebene Ordner enthält keine Videos!")
				End If
			Else
				Console.WriteLine("Der angegebene Ordner wurden icht gefunden!")
			End If

			Console.WriteLine()
			Console.WriteLine("Tastendruck für Ende")
			Console.Read()
		End Sub
	End Class
End Namespace

Bei Fragen fragen...
 
Zuletzt bearbeitet:
Zurück
Oben