Deutsch
Forum

FilelistToCsv

 
- Seite 1 -


Hallo Frank
also irgendwie komm ich mit den Flags nicht klar.
sollten den nicht eigentlich mit dem Flag 31 auch versteckte
Dateien angezeigt werden ????
Ausserdem kann ich zwischen Flag 31 mit/ohne Flag 512 keinen unterschied feststellen.Bei mir haben die Dateien immer ihre eigenen Icons.

Gruß Klaus
 
08.11.2004  
 



 
- Seite 1 -


HALLO,
Danke für die Hilfe und viel Spass im Urlaub

Gruß Klaus
 
08.11.2004  
 



Danke !!!

Hab ich gehabt...bis auf den Tag, als mir ein Angelhaken aus dem Finger geschnitten werden mußte... ...Pech...

Bin wieder aus dem Urlaub da und bereit für eure Fragen.

Gruß, Frank
 
08.11.2004  
 



Hi Frank
wäre es möglich bei dieser Funktion noch einen Dateifilter
einzubauen.... also *.* bzw *.txt usw.

oder gibts das schon ?? gefunden hab ich nichts

Gruß Klaus
 
08.11.2004  
 



Hallo,

nein, gibs noch nicht.
Ich schau mal, was sich machen läßt.

Hab momentan noch arge Probleme mit der Manifest Resource und der Sortierung von Spalten, das gilt es zuerst zu lösen...

Gruß, Frank
 
08.11.2004  
 



 
- Seite 2 -


Hi,

warum hat mir niemand gesagt, das die Listview-Sortierung nicht funktioniert, wenn das Profanprogramm im WinXP Manifest-Modus läuft ???
Naja, hab ja selber XP, aber das hatte ich wohl auch vergessen zu testen...

Ab jetzt funktioniert es jedenfalls und die Listview.dll nutzt von nun an im Manifest-Modus die WinXP gestylten Pfeile, um die Sortierrichtung anzuzeigen.
Ansonsten gelten aber weiterhin die alten Pfeile.

Gruß, Frank
 
08.11.2004  
 



Hi,

wäre es möglich bei dieser Funktion noch einen Dateifilter
einzubauen.... also *.* bzw *.txt usw.
oder gibts das schon ?? gefunden hab ich nichts

ich habe zwei Dateifilter-Funktionen eingebaut.
Wäre nett, wenn 1 bis 2 Personen es testen würden...
Bitte bei mir melden.

---

SetFilelistFilter(S)

Filterfunktion für FilelistToCsv().
Bis zu 32 Filterstrings können bestimmt werden, die beim Laden einer Fileliste ignoriert werden.

S : Zeiger auf einen String mit Filter(n).

Mit dieser Funktion kann erreicht werden, das ab dem nächsten FilelistToCsv() eine oder mehrere Dateinamen nicht mit in die Liste übernimmt.
S ist die Adresse eines Strings, der mehrere Strings enthalten kann. Diese werden durch das Zeichen | getrennt werden.
Das Trennzeichen wird durch die Tastenkombination LStrg LAlt < erreicht.
Maximal werden 32 Teilstrings unterstützt. Jeder Teilstring darf höchstens 63 Zeichen groß sein (plus ein Nullbyte).
Groß- und Kleinschrift wird nicht gesondert beachtet, es ist also egal, ob .bmp oder .BMP angegeben wird.
Wildcards wie * oder ? werden nicht unterstützt.
Wird SetFilelistFilter() ein zweites Mal oder öfter benutzt, dann werden die vorherigen (Teil) Strings gelöscht.
Im gleichen Zusammenhang ist auch noch SetFilelistNoFilter() interessant.

Beispiel, um keine Bilderdateien in der Fileliste anzuzeigen (jedenfalls die gängigsten):

filter$=.bmp|.gif|.jpg|.png
SetFilelistFilter(addr filter$)

Alle Dateien, in deren Name einer der Strings .bmp, .gif, .jpg oder .png vorkommen, werden nicht mit in die Fileliste übernommen.

---

SetFilelistNoFilter(S)

Filterfunktion für FilelistToCsv().
Bis zu 32 Filterstrings können bestimmt werden, die beim Laden einer Fileliste angezeigt werden. Alle anderen werden nicht mit in die Liste übernommen.

S : Zeiger auf einen String mit Filter(n).

Mit dieser Funktion kann erreicht werden, das ab dem nächsten FilelistToCsv() nur die Dateinamen mit in die Liste übernommen werden, die in S stehen. Das gilt nur für Programmnamen, nicht für Directories.
S ist die Adresse eines Strings, der mehrere Strings enthalten kann. Diese werden durch das Zeichen | getrennt werden.
Das Trennzeichen wird durch die Tastenkombination LStrg LAlt < erreicht.
Maximal werden 32 Teilstrings unterstützt. Jeder Teilstring darf höchstens 63 Zeichen groß sein (plus ein Nullbyte).
Groß- und Kleinschrift wird nicht gesondert beachtet, es ist also egal, ob .bmp oder .BMP angegeben wird.
Wildcards wie * oder ? werden nicht unterstützt.
Wird SetFilelistFilter() ein zweites Mal oder öfter benutzt, dann werden die vorherigen (Teil) Strings gelöscht.
Im gleichen Zusammenhang ist auch noch SetFilelistFilter() interessant.

Beispiel, um nur Bilderdateien in der Fileliste anzuzeigen (jedenfalls die gängigsten):

filter$=.bmp|.gif|.jpg|.png
SetFilelistNoFilter(addr filter$)

Nur Dateien, in deren Name einer der Strings .bmp, .gif, .jpg oder .png vorkommt, werden in die Fileliste übernommen.
Andere dateien nicht !
Directories sind vom Filter nicht betroffen.

---

Gruß, Frank
 
08.11.2004  
 



Hallo Frank
also wie heute morgen schon geschrieben funzt soweit alles
ganz gut bis auf das Problem mit dem PUNKT im Dateinamen

und noch was ist mir aufgefallen
Proc Dateifilter
declare DatFilter$
hier alle Dateien mit .txt einlesen = ok
let DatFilter$=.txt
SetFilelistNOFilter(addr(DatFilter$))
LoadDir1 C:

waitinput

und jetzt alle Dateien mit .xyz nicht einlesen = nicht ok
es bleibt bei den .txt Dateien ???!!!
let Datfilter$=.xyz
SetFilelistFilter(addr(DatFilter$))
LoadDir1 C:
endproc

Gruß Klaus
 
08.11.2004  
 



Hallo,
habe obiges Beispiel auch mal mit Leerzeichen versucht
um wieder eine ganze Liste hinzubekommen....
...jetzt sind alle Verzeichnisse verschwunden

Gruß Klaus
 
08.11.2004  
 



Hallo Klaus,

nein, kann ich nicht nachvollziehen.
Zuerst sperrst du alle Dateien, die NICHT .txt im Namen haben (SetFilelistNoFilter), dann sperrst du alle Dateinamen, die .xyz beinhalten. Die beiden Filter sind voneinander unabhängig und können gleichzeitig benutzt werden.

Das Leerzeichen ist ein Problem, damit werden Listview.dll-intern Ordnernamen gekennzeichnet, um später beim Sorieren Ordner und Dateinamen auseinander halten zu können. Ich verwende das Zeichen Chr$(160), Shift Space. Weil Groß-Kleinschreibung aber gleich behandelt wird, wird es im Filter als Space Chr$(32) behandelt...
Das wird nicht zu ändern sein. Naja, immerhin gibt es jetzt eine Methode, um alle Ordner auszublenden

Einen Bug hast du mir indirekt gezeigt. Ist ein Dateiname kürzer als der Filtername, dann wird er nicht weiter beachtet.
Das versuche ich zu korregieren.

Gruß und Dank,
Frank
 
08.11.2004  
 



Hallo Frank

das mit dem Leerzeichen ist mir nur so aufgefallen und auch
nicht weiter wichtig(zumindest für mich)
es gibt zwar Dateien ohne Endung...aber was solls

aber was ist wenn sich im Dateinamen zufällig der gleiche
String befindet wie eine Dateiendung ?
z.B. ArchivFormat.zip-Okt03.txt
wenn ich jetzt nur .zip anzeigen als Filter verwende
wird diese Datei auch angezeigt.

Ok,die Filter sind unabhängig vonneinander..hab ich verstanden
das bedeutet also ich kann die Sperrung des Filters nicht
rückgängig machen ?...das war eigentlich mein vorhaben.

1.)nur Dateien anzeigen die .txt beinhalten
let DatFilter$=.txt
SetFilelistNOFilter(addr(DatFilter$))

2.)dann wollte ich das wieder rückgängig machen und eben
alle Dateien anzeigen die nicht .xyz(nur mal als Beispiel)
beinhalten
let Datfilter$=.xyz
SetFilelistFilter(addr(DatFilter$))

nur wenn wie Du sagst die Filter unabhängig sind weis ich beim besten willen nicht wie ich nach einem Filter diesen wieder
rückgängig machen soll ??

Vielleicht kannst Du mir da mal auf die Sprünge helfen

Gruß Klaus
 
08.11.2004  
 



Hallo Klaus,

ach so, du willst den Filter wieder löschen...
Dafür hab ich jetzt keine Extraoption eingefügt, nimm einfach ein in Dateinamen verbotenes Zeichen. Z.B.:

let DatFilter$=?
SetFilelistFilter(addr(DatFilter$))

let DatFilter$=?
SetFilelistNOFilter(addr(DatFilter$))

Gruß, Frank
 
08.11.2004  
 



Hallo
aber macht es den einen Unterschied ob nun ein verbotenes Zeichen oder eine nicht zutreffende Dateiendung genommen wird ?

es ist der gleiche effekt wie ich oben am 8.9 in dem Quellcode
schnipsel beschrieben habe.

Es bleibt immer der zuletzt gesetzte Filter bestehen
denn wie Du ja gesagt hast arbeiten die Filter unabhängig

ist also wenn ich das richtig verstanden habe FileListNoFilter
einmal gesetzt wars das....
man kann zwar dem Filter immer neue
Dateiendungen zuweisen diese werden auch korrekt eingelesen
nur ein setzten des ? bringt hier nichts den es gibt ja keine
Dateien mit ?
....also man nehme FileListFilter setze hier ein
? und nun sollten beim nächsten filelisttocsv eigentlich alle
Dateien die KEIN ? enthalten eingelesen werden....aber es hängt irgendwo noch der zuletzt gesetzte Filter von FileListNoFilter rum.....und drum geht das nicht

sollte ich mich irren ...großes SORRY
und bitte nochmals um Hilfe ... auch wenns Dich bischen Nerft
aber ohne Dich krieg ich das nicht hin

Gruß Klaus
 
08.11.2004  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

8.589 Betrachtungen

Unbenanntvor 0 min.
Manfred Barei11.03.2020
kustg10.05.2019
Peter Max Müller04.02.2019
Christof Neuß04.11.2016
Mehr...

Themeninformationen

Dieses Thema hat 1 Teilnehmer:

unbekannt (20x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie