Verzeichnis Namen aus Pfad auslesen

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

Verzeichnis Namen aus Pfad auslesen

Beitrag von Velindos »

Hallo Leute,

mit dem Befehl
Debug GetPathPart("D:\INFORMENT\[TRAILER]\00 Schneider Im Wendezeichen der Eidechse (2013)\Folder.jpg")
erhalte ich den
"D:\INFORMENT\[TRAILER]\00 Schneider Im Wendezeichen der Eidechse (2013)\"
Gibt es eine Möglichkeit das ich
"00 Schneider Im Wendezeichen der Eidechse (2013)"
als String zurück bekomme!

Hat jemand eine Idee?

Gruss ... Velindos
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Verzeichnis Namen aus Pfad auslesen

Beitrag von ts-soft »

Gibt es eine Möglichkeit das ich
Sehr viele :D
z.B.

Code: Alles auswählen

Debug StringField("D:\INFORMENT\[TRAILER]\00 Schneider Im Wendezeichen der Eidechse (2013)\Folder.jpg", CountString("D:\INFORMENT\[TRAILER]\00 Schneider Im Wendezeichen der Eidechse (2013)\Folder.jpg", "\"), "\")
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Sicro
Beiträge: 955
Registriert: 11.08.2005 19:08
Kontaktdaten:

Re: Verzeichnis Namen aus Pfad auslesen

Beitrag von Sicro »

Code: Alles auswählen

Debug GetFilePart(RTrim(GetPathPart("D:\INFORMENT\[TRAILER]\00 Schneider Im Wendezeichen der Eidechse (2013)\Folder.jpg"), "\"))
Bild
Warum OpenSource eine Lizenz haben sollte :: PB-CodeArchiv-Rebirth :: Pleasant-Dark (Syntax-Farbschema) :: RegEx-Engine (kompiliert RegExes zu NFA/DFA)
Manjaro Xfce x64 (Hauptsystem) :: Windows 10 Home (VirtualBox) :: Neueste PureBasic-Version
Benutzeravatar
mk-soft
Beiträge: 3700
Registriert: 24.11.2004 13:12
Wohnort: Germany

Re: Verzeichnis Namen aus Pfad auslesen

Beitrag von mk-soft »

Gerade im englischen Forum gepostet

Code: Alles auswählen

;-TOP

; Comment : SplitString to list with option double-quotes
; Author  : mk-soft
; Version : v1.03
; Created : 03.11.2017
; Updated : 
; Link GR : 
; Link EN : 

; OS      : All

; ***************************************************************************************

Procedure SplitString(String.s, Separator.s, List Result.s(), DQuote = #False)
  Protected *String.character, *Separator.character
  Protected *Start, *End, exit, lock, do, dq, len
  
  ClearList(Result())
  *String = @String
  *Separator = @Separator
  *Start = *String
  *End = *String
  Repeat
    If *String\c = 0
      exit = #True
      do = #True
      If Not dq
        *End = *String
      EndIf
    Else
      If DQuote And *String\c = '"'
        If Not lock
          lock = #True
          dq = #True
          *Start = *String + SizeOf(character)
        Else
          lock = #False
          *End = *String
        EndIf
      EndIf
      If *String\c = *Separator\c And Not lock
        do = #True
        If Not dq
          *End = *String
        EndIf
      EndIf
    EndIf
    If do
      AddElement(Result()) 
      len = (*End - *Start) / SizeOf(character)
      If Len > 0
        Result() = PeekS(*Start, len) 
      EndIf
      *Start = *String + SizeOf(character)
      do = #False
      dq = #False
    EndIf
    *String + SizeOf(character)
  Until exit
  ProcedureReturn ListSize(Result())
EndProcedure

; ***************************************************************************************

;-Test

CompilerIf #PB_Compiler_IsMainFile
  
  Global NewList r1.s()
  Global text.s = "0;1x;2xx;'Text with separator (;)';4xxxx;5xxxxx;'Text with linefeed " + #LF$ + "and separator (;)';End"
  text = ReplaceString(text, "'", #DQUOTE$)
  ;text = "Hello World"
  Debug "Text = " + text
  Debug "Count = " + SplitString(text, ";", r1(), #True)
  ForEach r1()
    Debug "#"+r1()+"#"
  Next
  
  text = "D:\INFORMENT\[TRAILER]\00 Schneider Im Wendezeichen der Eidechse (2013)\Folder.jpg"
  Debug "Count = " + SplitString(text, "\", r1())
  ForEach r1()
    Debug "#"+r1()+"#"
  Next
  
CompilerEndIf
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

Re: Verzeichnis Namen aus Pfad auslesen

Beitrag von Velindos »

Hallo Leute,

DANKE für die Tips, jetzt kann ich das Verzeichnis auslesen!

Gruss ... Velindos
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Benutzeravatar
udg
Beiträge: 560
Registriert: 20.06.2013 23:27

Re: Verzeichnis Namen aus Pfad auslesen

Beitrag von udg »

da gibts ein schönes Tool:

folder2txt Info und Runterladen

Bild

programmiert mit PureBasic :)
PB v5.43 LTS + v6.02 LTS | Windows 7 x86 + 11 x64 - Gforce RTX 4090 - AMD Ryzen 9 5900X 12-Core Processor 4.2 GHz - 64,0 GB RAM,
ASUSTEK TUF Gaming X570 Plus
ASUS ROG Thor-1200P Platinum (1200W, Aura Sync, OLED Display, 0dB-Cooling)
1x 1 TByte Samsung MZ-V7S500BW 970 EVO Plus 1 TB NVMe M.2 Internal SSD
1x 2 TByte Samsung MZ-V7S2T0BW 970 EVO Plus 2 TB NVMe M.2 Internal SSD
von BiSONTE! TOP. Kauft Eure Hardware gern bei ihm.
Monitor:
LG 38GL950G-B 95 (38 Zoll) Ultragear Curved 21: 9 UltraWide QHD IPS
Antworten