Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

error: not enough input.

was willst du denn dann damit machen, wenn du die dateien gefunden hast (weiterverarbeiten, in datei schicken, löschen, wegsichern, etc etc)?

im simpelsten falle tuts ein

dir *.zip /b /s > dateiliste.txt

s'Amstel

Geschrieben

Theoretisch sollte es so sein:

Do while not ENDE MIT EINLESEN

 dateiname = Aktueller_Ordner/Dateiname.Dateiendung

 Loop

das jede Datei dann in einer Schleife in dateiname geschrieben wird, beim nächsten durchgang also wenn die nächste Datei gefunden wird wird dateiname überschrieben.

Mehr brauche ich dann nicht, den rest kann ich mir dann zusammenbauen, dieser name soll dann einfach in eine ACCESS Datenbank eingetragen werden.

Den Programmcode für die Datenbank habe ich schon und müsste ich nur in die Schleife bauen.

Nur weiß ich leider nicht, wie ich nach Dateien suche.

Wichtig: Es soll das Aktuelle Verzeichnis und alle unterverzeichnisse von dem Ordner der als String in ordnername steht.

Ich danke dir vielmals für deine Antwort/en.

Mit freundlichen Grüßenn

Stephan B.

Geschrieben

wenns access sein soll: das Scripting.FileSystemObject unterstützt methoden zur dateisuche, wie z.b. GetFolder, SubFolders, FindFiles, etc etc

damit sollte dir google schon einige codeschnipsel ausspucken.

s'Amstel

Geschrieben

Danke für deine Antwort!

Ich habe nun:

Private Sub Button1_Click(ByVal sender As System.Object, _

            ByVal e As System.EventArgs) Handles Button1.Click

        Dim i As Int32

        Try

            Dim arrAllFiles() As String = _

                  Directory.GetFiles(TextBox1.Text, TextBox2.Text)

            ListBox1.Items.Clear()

            For i = 0 To arrAllFiles.Length - 1

                ListBox1.Items.Add(arrAllFiles(i))

            Next

            Label1.Text = CStr(arrAllFiles.Length)

        Catch Except As Exception

            MsgBox(Except.Message & vbNewLine & _

                    "Möglicherweise ist die Pfadangabe falsch.", _

                    MsgBoxStyle.Exclamation)

            ListBox1.Items.Clear()

            Label1.Text = CStr(0)

        End Try

    End Sub

leider werden damit keine Unterverzeichnise durchgesucht.

Wie kann ich das machen?

Danke dir

Geschrieben

... ach herje, immer diese Windoze-Nufzer!!!

Das ist der Weg in 3 Worten:

"find . | grep .zip"

(um im aktuellen Verzeichnisbaum (=alle Verzeichnisse mit Unterverzeichnissen) nach diesen files zu suchen)

oder

"find|grep .zip"

(um in allen Verzeichnissen auf der Festplatte nach gezippten Dateien zu suchen; dauert aber ne Weile, weil er auch die "Systemdateien" durchsucht)

und am besten noch mit "|more" hinten dran, dann kannst Du Dir seitenweise mit space anzeigen lassen oder gleich in den output in ein extra file umleiten mit ">counted-zipfiles", weil es wahrscheinlich sehr viele sein werden

Und das ist die Voraussetzung fuer die 3 Worte:

... logt Euch doch einfach mal auf nem Linux(?)-rechner ein, holt Euch mal ne schicke schnelle Shell und tippt die 3 Woerter mal bitte ein

(ne richtige shell ist viel, viel cooler als die allte dos-kruecke!!!)

Wenn Euer Admin nicht gerade geschlafen hat, ist bestimmt die Platte auch unter LInux(?) gemountet

und solche Abfragen und noch viel mehr gehen ganz easy, ohne auch nur ein Fuenkchen nachzudenken.

WARUM MACHT IHR EUCH DAS IMMER SO SCHWER?!

Sorry, dass ich das mal hier so hart sage,

trotzdem wuensch ich Euch noch nen schoenen Tag,

sissy66.

Geschrieben

pack das ganze in eine funktion (z.b. ListVerzeichnisse) und übergib ihr den aktuellen (sub)folder. mit

Set Folder = FSO.GetFolder(sPath)

For Each SubFolder In Folder.SubFolders

ListVerzeichnisse Liste, sPath & SubFolder.Name

Next

kannst du dann alle verzeichnisse in verzeichnissen rekursiv (also sich selbst aufrufend) listen.

s'Amstel

@sissy: bei aller liebe zu linux, aber access und vba laufen darauf wohl kaum :P

Geschrieben
... ach herje, immer diese Windoze-Nufzer!!!

Das ist der Weg in 3 Worten:

"find . | grep .zip"

(um im aktuellen Verzeichnisbaum (=alle Verzeichnisse mit Unterverzeichnissen) nach diesen files zu suchen)

oder

"find|grep .zip"

(um in allen Verzeichnissen auf der Festplatte nach gezippten Dateien zu suchen; dauert aber ne Weile, weil er auch die "Systemdateien" durchsucht)

und am besten noch mit "|more" hinten dran, dann kannst Du Dir seitenweise mit space anzeigen lassen oder gleich in den output in ein extra file umleiten mit ">counted-zipfiles", weil es wahrscheinlich sehr viele sein werden

Und das ist die Voraussetzung fuer die 3 Worte:

... logt Euch doch einfach mal auf nem Linux(?)-rechner ein, holt Euch mal ne schicke schnelle Shell und tippt die 3 Woerter mal bitte ein

(ne richtige shell ist viel, viel cooler als die allte dos-kruecke!!!)

Wenn Euer Admin nicht gerade geschlafen hat, ist bestimmt die Platte auch unter LInux(?) gemountet

und solche Abfragen und noch viel mehr gehen ganz easy, ohne auch nur ein Fuenkchen nachzudenken.

WARUM MACHT IHR EUCH DAS IMMER SO SCHWER?!

Sorry, dass ich das mal hier so hart sage,

trotzdem wuensch ich Euch noch nen schoenen Tag,

sissy66.

Jo, Danke ich habe warscheinlich Geschlafen ;)

Ich bin der Admin von dem Netzwerk und benutze kein Linux!

Auserdem geht es um Programmieren in visual Basic und nicht um Dateien auf nem Computer suchen um damit nachher in Excel usw zu Arbeiten!!!

Trozdem danke

Geschrieben
Amstelchen

Ich benutze Visual Basic.Net sry das ich das nicht erwähnt habe.

Aber ich weiß wonach ich suchen muss und werde bestimmt was finden.

Danke dir ich melde mich wenn ich ein Problem habe :)

Mit freundlichen Grüßen

Stephan B.

Geschrieben

... schon mal was davon gehoert, dass es da auch regular expressions gibt, die auch schon die meisten Fehler abfangen, ohne dass man um seine Abfrage gleich ein Programm drum herum bauen muss?!

(die sehen zwar fuer meine Vorstellungen vielleicht etwas verkreuppelt aus, aber es scheint fuer die wichtigsten Dinge funktionieren zu koennen, nach den fernen Aussagen einiger mir Bekannter windoze nufzer, und dem standard pdf fuer regexp)

... aber wie man im win (esp. vba, access) mit regexp umgeht, da muss ich leider passen (vielleicht weiss da googel mehr) ... waer vielleicht mal ein Vortragsthema fuer den Informatikunterricht ...

--------------------------

Sorry, dann bin ich ja doch im vba Forum gelandet ... hab nur unter Aktuelles gelesen und den Forumname gar nicht so registriert. (Die Aufgabe ist aber auch allgemein formuliert, sodass der Leser trotzdem nicht weiss, ob es mit visual basic gehen soll und/oder mit access. )

-------------------------

Liebe Gruesse,

sissy66.

Geschrieben

bei googel hab ich das gefunden:

You can then call RegexObj.IsMatch("subject") to check whether the regular expression matches the subject string.

(http://www.regular-expressions.info/dotnet.html)

... dem subject musst Du natuerlich irgendwo vorher Deinen string ".zip" uebergeben haben, und gucken, ob Du die Klasse, die Du da benutzt noch ueber irgendeine library mit einbinden muss, dann muesste er das checken ...

... und die Instanz von Deinem RegexObj muss wissen, dass Deine files aus dem Dateisystem gemeint sind (schleife, die ueber alle files iteriert ) ... aber wie man im .NET Dateien anquatscht wirst Du wohl selber wissen

das ist alles noch nichts .net Spezifisches, wird halt nur in anderen Programmiersprachen "anderser" geschrieben

aber frag mich nicht, wie ich man das konkret einbaut ... ich kann das hier nicht testen, hab kein dotnice hier

(ich schreibe alles in der shell und ueberlass das, was Deine Umgebung im Hintergrund so macht (compillieren, linken, testen), meinen vorgefertigten makefiles (weil ich die kenne im Laufe der Zeit und darueber die Kontrolle haben kann) ;-)

dennoch viel spass mit dem Zeugs,

sissy66

  • 2 Wochen später...

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...