Español
Fuente/ Codesnippets

Dateiname Pathremovefilespec Pfad Splitfilename Trennen

 

Michael
Wodrich
Dateinamen aufdröseln de Versión 10.0 (nutzt Substr rückwärts y Match$)
KompilierenMarcaSeparación
SplitFilename  (Test-Schnipsel)
Ab XProfan 10

Proc SplitFilename

    Parameters Vollname$
    Declare Laufwerk$, Pfad$, Datei$, Extension$
    Laufwerk$ = Match$(.:,Vollname$)
    Pfad$ = Match$(~.{0,2}\(.*\)?,Vollname$)
    Datei$ = SubStr$(Vollname$,-1,If(InStr(\,Vollname$),\,:))
    Extension$ = If(InStr(.,Datei$),SubStr$(Datei$,-1,.),)
    AddString Voller Dateiname: q + Vollname$ + q
    AddString Laufwerk + MkStr$(.,8) + : q + Laufwerk$ + q
    AddString Pfad + MkStr$(.,12) + : q + Pfad$ + q
    AddString Dateiname + MkStr$(.,7) + : q + Datei$ + q
    AddString Extension + MkStr$(.,7) + : q + Extension$ + q
    AddString

EndProc

ClearList
SplitFilename C:
SplitFilename Datei
SplitFilename Datei.
SplitFilename C:Datei.ext
SplitFilename C:Datei.ext
SplitFilename C:TestDatei
SplitFilename C:Test.$$$Datei.ext
SplitFilename C:Test.$$$Datei.
SplitFilename C:Test.$$$Datei
SplitFilename .Text.$$$
SplitFilename ....von weiter vorndatei.ext
ListBox$(die Ergebnisse,2)
VVV damit habe ich mal schnell die Ergebnisse abgegriffen
Declare s$,B#
Dim B#,50000
MoveListToMem(B#,
)
BlockWrite C:\Test_Splitfilename.txt,B#,0,Len(String$(B#,0))
Dispose B#
ShellExec(C:\Test_Splitfilename.txt,open,1)
End

y el Ergebnisse:

Voller Dateiname: C:
Laufwerk........: C:
Pfad............:
Dateiname.......:
Extension.......:

Voller Dateiname: Expediente
Laufwerk........:
Pfad............:
Dateiname.......: Expediente
Extension.......:

Voller Dateiname: Expediente.
Laufwerk........:
Pfad............:
Dateiname.......: Expediente.
Extension.......:

Voller Dateiname: Catei.ext
Laufwerk........: C:
Pfad............:
Dateiname.......: Expediente.ext
Extension.......: ext

Voller Dateiname: Catei.ext
Laufwerk........: C:
Pfad............:
Dateiname.......: Expediente.ext
Extension.......: ext

Voller Dateiname: C:TestDatei
Laufwerk........: C:
Pfad............: Test
Dateiname.......: Expediente
Extension.......:

Voller Dateiname: C:Test.$$$Expediente.ext
Laufwerk........: C:
Pfad............: Test.$$$
Dateiname.......: Expediente.ext
Extension.......: ext

Voller Dateiname: C:Test.$$$Expediente.
Laufwerk........: C:
Pfad............: Test.$$$
Dateiname.......: Expediente.
Extension.......:

Voller Dateiname: C:Test.$$$Expediente
Laufwerk........: C:
Pfad............: Test.$$$
Dateiname.......: Expediente
Extension.......:

Voller Dateiname: .Texto.$$$
Laufwerk........:
Pfad............: .Texto.$$$
Dateiname.......:
Extension.......:

Voller Dateiname: ....de más vorndatei.ext
Laufwerk........:
Pfad............: ....de más vorn
Dateiname.......: datei.ext
Extension.......: ext
 
Programmieren, das spannendste Detektivspiel der Welt.
16.06.2006  
 



[quote:283141f477=Michael Wodrich]
y el Ergebnisse:
[box:283141f477]
Voller Dateiname: Catei.ext
[/box:283141f477][/quote:283141f477]
Como nadie Backslash
Usted debe el Laufwerksbuchstaben auch con BackSlash zurückgeben, todos API-Aufrufe akzeptieren
en el allgemeinen beides, also C: y C:, así el lo con Backslash einheitlicher wäre.
Ansonsten muy nützlich.
 
16.06.2006  
 




Michael
Wodrich
Ist no bastante correcto con el Backslash.

El Expediente de hecho puede en *cada* Directorio en Laufwerk C: ser, si ellos así angegeben es.

Und es no el Tarea uno Splitters para una vollständigen Namen a sorgen. Dann wären nämlich auch el .. todos aufgelöst worden.

Manchmal braucht uno simplemente sólo una Namens-Verhackstücker, porque uno una Teil su austauschen möchte.

Korrekt wäre allerdings, el Dateinamen de el Erweiterung a befreien. Dann reicht una einfaches addieren el Teile y uno ha otra vez una Ganzes (deshalb: Laufwerk sólo el Buchstabe y Doppelpunkt).

Ist en el Snippets gelandet, porque uno se como sí qué draus ableiten kann.

In cada Fall es ahora con XProfan 10 alles algo kürzer a escribir.

Schöne Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
16.06.2006  
 




Jac
de
Lad
Gibts dafpr no auch ne API? Yo mi, si yo de una Dateinamen el Pfad extrahieren voluntad, Yo podría el grad bien gebrauchen, finde pero no la.
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
07.03.2007  
 




KompilierenMarcaSeparación
DEF @PathRemoveFileSpec(1) !shlwapi,PathRemoveFileSpecA
WindowTitle Dateinamen von Pfad trennen
Windowstyle 31+512
Window 0,0-640,440
Declare EingabeDatei$,Pfad#
Let EingabeDatei$=C:
Dim Pfad#,513

While EingabeDatei$<>

    let EingabeDatei$=@LoadFile$(Bitte Datei auswählen,*.*)
    String Pfad#,0=EingabeDatei$
    @PathRemoveFileSpec(Pfad#)
    Print @String$(Pfad#,0)

07.03.2007  
 



Michael Wodrich
Ist no bastante correcto con el Backslash.

El Expediente de hecho puede en *cada* Directorio en Laufwerk C: ser, si ellos así angegeben es.


Völlig korrekt porque si se una Prozess z.B. via chdir  en d: befinded, zuvor aber después de c:sonstwasirgendwas cambiado wurde - así sería el Angabe de C:mi.datei en c:sonstwasirgendwasmeine.datei zeigen, en lugar de en c:mi.datei.

Michaels Algo funzt IMHO absolut correcto.
 
07.03.2007  
 




Jac
de
Lad
@Andreas: Gracias!
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
08.03.2007  
 



Zum Quelltext


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

8.311 Views

Untitledvor 0 min.
Rainer Hoefs11.06.2023
rafl03.10.2014
Christian Hahn05.07.2013
maxpayne200129.04.2013

Themeninformationen



Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie