Visual Basic Forum

Visual Basic Forum
für VB6 und VB.NET Programmierer
 
RegistrierenRegistrieren  LoginLogin
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB.NET] Fragen - Antworten
Autor
Nachricht
HoL|FsC
Tutorial Leser
Tutorial Leser

Anmeldedatum: 15.06.2008
Beiträge: 22

Ordner / Datei auflistung
Verfasst am: 24.07.2008, 14:59

Mein Code:
Visual Basic: [code]Dim pDir As New System.IO.DirectoryInfo("C:datatesting")
For Each pDire As IO.DirectoryInfo In pDir.GetDirectories()
Dim Name As String = IO.Path.GetFileName(pDire.FullName) ' <- !
' Fügt die vorhandenen Ordner hinzu
TreeView1.Nodes.Add(Name) '< ADDED THE FOLDER.-NAME
'Fügt die Files vom Orndername hinzu - Sprich die die sich da drinne befinen
Dim transtovar As String
transtovar = Name
Dim directory As New System.IO.DirectoryInfo(transtovar)
For Each file1 As System.IO.FileInfo In directory.GetFiles
If file1.Extension = ".txt" Or file1.Extension = ".TXT" Then
ListBox1.Items.Add(file1.Name)
'TreeView1.Nodes.Add(file1.Name)


'Dim listViewItem As New ListViewItem(file1.Name)
'listViewItem.SubItems.Add(file1.Name)
'ListView1.Items.Add(listViewItem)

End If
Next

Next[/code]


An sich funkitoniert er nur das Auflisten der Dateien in den jewaligen Ordner macht Probleme.
Visual Basic: [code]Name[/code]
Ist die Variable in der der jewalige Ordnername steht.
Verwendet wird es dann nocheinmal hier:
Visual Basic: [code]transtovar = Name
Dim directory As New System.IO.DirectoryInfo(transtovar)[/code]

Das Problem ist das es mit ner Variable aus irgendeinem Grund nicht klar kommt? Trage ich den Pfad bzw. den Ordner selber ein ist das kein Problem nur wenn ich ihn in der Variable übergeben will?
Woran liegt das?

Mfg. HoL
 
sollniss
Überflieger
Überflieger

Anmeldedatum: 01.05.2008
Beiträge: 699


Verfasst am: 24.07.2008, 15:08

Namenskonflikt?

Nenne Variablen NIEMALS so. Benenne sie hald nach strName bzw. sName.
Das Selbe mit directory.
 
HoL&#124;FsC
Tutorial Leser
Tutorial Leser

Anmeldedatum: 15.06.2008
Beiträge: 22


Verfasst am: 24.07.2008, 15:29

Habe ich umbenannt war allerdings trotzdem nicht der Fehler?
Geht immer noch nicht?
 
sollniss
Überflieger
Überflieger

Anmeldedatum: 01.05.2008
Beiträge: 699


Verfasst am: 24.07.2008, 16:17

Nimm die Funktion, die geht 100%ig

Visual Basic: [code]
Private Function DateienAuslesen(ByVal Pfad As String)
Dim strDateien() As String

livDateien.Items.Clear()

strDateien = System.IO.Directory.GetFiles(Pfad)

For i As Double = 0 To strDateien.GetUpperBound(0)
Dim Buffer() As String
Buffer = strDateien(i).ToString.Split("")
If Buffer(Buffer.GetUpperBound(0)).EndsWith("txt") = True Or _ ' ob man das brauch, ka.. habs mal von dir übernommen
Buffer(Buffer.GetUpperBound(0)).EndsWith("TXT") = True Then

livDateien.Items.Add(Buffer(Buffer.GetUpperBound(0)))
End If
Next
End Function[/code]

Du brauchst nur nen Listview (livDateien)
 
HoL&#124;FsC
Tutorial Leser
Tutorial Leser

Anmeldedatum: 15.06.2008
Beiträge: 22


Verfasst am: 24.07.2008, 18:38

Danke,
nur ich komm damit gerade net so zurecht ich brauch das beides Getrennt den Ordner und die Files?
Außerdem hab ich net so ne Peilung wie man mit Funktionen arbeitet? [img]/ohmy.gif[/img]

Visual Basic: [code] Dim pDir As New System.IO.DirectoryInfo("C:datatesting")
For Each pDire As IO.DirectoryInfo In pDir.GetDirectories()
Dim sName As String = IO.Path.GetFileName(pDire.FullName) ' <- !
TreeView1.Nodes.Add(sName)



'Hier werden die Dateien ausgelesen
Dim strDateien() As String
livDateien.Items.Clear()
strDateien = System.IO.Directory.GetFiles(sName)

For i As Double = 0 To strDateien.GetUpperBound(0)
Dim Buffer() As String
Buffer = strDateien(i).ToString.Split("")
If Buffer(Buffer.GetUpperBound(0)).EndsWith("txt") = True Or Buffer(Buffer.GetUpperBound(0)).EndsWith("TXT") = True Then ' ob man das brauch, ka.. habs mal von dir übernommen
livDateien.Items.Add(Buffer(Buffer.GetUpperBound(0)))
End If

Next 'Next von der 2. Schleife
Next 'Next der ersten Schleife[/code]

Visual Basic: [code]strDateien = System.IO.Directory.GetFiles(sName)[/code]
Genau hier stoppt er?

Das ist mein Aktueller Code, doch leider sagt er immer noch das er Teile des Pfads nicht finden konnte!?
 
sollniss
Überflieger
Überflieger

Anmeldedatum: 01.05.2008
Beiträge: 699


Verfasst am: 24.07.2008, 22:42

Tja, und was zeigt er an?
 
HoL&#124;FsC
Tutorial Leser
Tutorial Leser

Anmeldedatum: 15.06.2008
Beiträge: 22


Verfasst am: 24.07.2008, 23:00



Das kommt dann?
 
sollniss
Überflieger
Überflieger

Anmeldedatum: 01.05.2008
Beiträge: 699


Verfasst am: 25.07.2008, 00:41

Bei sName muss nen Pfad hin.
 
HoL&#124;FsC
Tutorial Leser
Tutorial Leser

Anmeldedatum: 15.06.2008
Beiträge: 22


Verfasst am: 25.07.2008, 01:05

Wie ich ja bereits mehr mals erklärte ist das sName der Pfad in einer Variable!
Ich muss den Pfad aus der Variable nehmen? :confused:
Und das geht ja eben net!
 
sollniss
Überflieger
Überflieger

Anmeldedatum: 01.05.2008
Beiträge: 699


Verfasst am: 25.07.2008, 01:25

Denn ist irgendwas am Pfad falsch (die ja der Fehler schon sagt :/). Überprüfe mal, ob der Pfad stimmt.
 
HoL&#124;FsC
Tutorial Leser
Tutorial Leser

Anmeldedatum: 15.06.2008
Beiträge: 22


Verfasst am: 25.07.2008, 01:43

100% stimmt er - der erste Teil:

Dim pDir As New System.IO.DirectoryInfo("C:datatesting")
For Each pDire As IO.DirectoryInfo In pDir.GetDirectories()
Dim sName As String = IO.Path.GetFileName(pDire.FullName) ' <- !
TreeView1.Nodes.Add(sName)

Bekommt den richtigen Pfad und funktioniert auch wunderbar!
Nur halt der 2. Teil kommt damit nicht zu recht trage ich den Pfad aber selber ein tut er es?
 
sollniss
Überflieger
Überflieger

Anmeldedatum: 01.05.2008
Beiträge: 699


Verfasst am: 25.07.2008, 13:11

Da steht GetFileName, meine Function erwartet Ordner, keine Dateien.
 
HoL&#124;FsC
Tutorial Leser
Tutorial Leser

Anmeldedatum: 15.06.2008
Beiträge: 22


Verfasst am: 25.07.2008, 17:44

Upppps da war mein Fehler ohman wie Peinlich entschuldige bitte!

Eine Frage noch:
Wie kann ich beim Treeview Sub Items hinzufügen per code?
Und wie kann ich das beim ListView machen?
Sagen wir mal ich hab biem ListView 3 Zeilen und in jede Zeile soll was unterschiedliches wie mache ich dat den?

Aber echt super support hier danke euch!

Mfg.
HoL
 
sollniss
Überflieger
Überflieger

Anmeldedatum: 01.05.2008
Beiträge: 699


Verfasst am: 25.07.2008, 18:47


Listview
Visual Basic: [code]
ListView1.Columns.Add("1")
ListView1.Columns.Add("2")
ListView1.Columns.Add("3")
ListView1.Items.Add("A")
ListView1.Items.Item(0).SubItems.Add("B")
ListView1.Items.Item(0).SubItems.Add("C")[/code]

Treeview
Visual Basic: [code]
Dim Node1, Node2 As TreeNode
Node1 = TreeView1.Nodes.Add("A")
Node1.Nodes.Add("B")
Node2 = Node1.Nodes.Add("C")
Node2.Nodes.Add("D")[/code]
 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB.NET] Fragen - Antworten

Tags: visual basic, ordner, auflistung, datei, for

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Wichtig: [Ebook] jetzt lerne ich Visual Basic 6 5067 02.06.2010, 13:55
Keine neuen Beiträge Miceosoft Visual Basic 6.0 Einsteiger Kurs? 1189 17.02.2007, 21:01
Keine neuen Beiträge SUCHE MICROSOFT VISUAL BASIC! 944 12.02.2007, 21:54
Keine neuen Beiträge Microsoft Visual Basic 1275 28.01.2007, 00:59
Keine neuen Beiträge Visual Basic.. Version?? 1230 22.01.2007, 18:23
 


[ Time: 0.0963s ][ Queries: 121 (0.0445s) ][ GZIP on - Debug on ]