[VB] Bestandsnaam uit dir string halen

Pagina: 1
Acties:
  • 127 views sinds 30-01-2008
  • Reageer

  • CrashOne
  • Registratie: Juli 2000
  • Niet online

CrashOne

oOoOoOoOoOoOoOoOoOo

Topicstarter
Hallo,

Ik heb het volgende probleem, ik heb een string waar een dir instaat als:
c:\dir\subdir\subdir\naam.ext

Nu wil ik alleen dit gedeelte van die string hebben:
c:\dir\subdir\subdir\

Echter kan de dir structuur verschillend zijn net zoals de bestands naam en extensie.

De enige constante zijn dus de punt, de slashes en de :.

lastIndexOf kent VB niet, iemand een idee hoe dit op te lossen?

BVD!

Huur mij in als freelance SEO consultant!


  • djexplo
  • Registratie: Oktober 2000
  • Laatst online: 21-12-2025
Simpel, met een loopje van achter naar voren de string door lopen, en als je de slash tegen komt loopje onderbreken, en dan van begin tot gevonden slash gebruiken

'if it looks like a duck, walks like a duck and quacks like a duck it's probably a duck'


  • vogeltje
  • Registratie: December 2001
  • Laatst online: 10-08-2025
de laatste "\" opzoeken, en en vanaf die positie (en alles daarvoor) eruit rippen, zie InStr(Rev)

binnenkort een hele dikke casemod :P


  • TrickShot
  • Registratie: Februari 2003
  • Laatst online: 14-12-2023

TrickShot

Veel shots... weinig tricks.

Kan je niet eerst tellen hoeveel '\'er voorkomen, dan de positie van de xte '\' bepalen en alles na die positie afkappen.

Ken zo direct de commando's niet meer. :D ;)

* TrickShot is te traag :(

[ Voor 18% gewijzigd door TrickShot op 22-01-2004 13:05 ]

Athlon 2500+ @ 2230 MHz, 512 MB 3200 kingston, 2 x sata maxtor 120 GB, 1 WD 80 GB, Ti4200, Antec Sonata


  • vogeltje
  • Registratie: December 2001
  • Laatst online: 10-08-2025
Of (vrij omslachtig weliswaar) een Split (met "\" als Delimiter) uitvoeren, en dan alles weer aan elkaar plakken (behalve de laatste natuurlijk).

Maar met InStrRev kan je het in 1 regel uitcoden, scheelt weer onnodige regels :)

[ Voor 26% gewijzigd door vogeltje op 22-01-2004 13:10 ]

binnenkort een hele dikke casemod :P


  • CrashOne
  • Registratie: Juli 2000
  • Niet online

CrashOne

oOoOoOoOoOoOoOoOoOo

Topicstarter
bedankt, inStrRev zocht ik!

Huur mij in als freelance SEO consultant!


Verwijderd

Je kan ook de functie Dir(filename) gebruiken. Deze geeft van een bestandspad alleen het bestand terug zonder directory.
Dus als je pad is "c:\test\testdir\test.txt" geeft hij "test.txt" terug. De lengte van dit kan je van het totaal afhalen waardoor je alleen de directory overhoud. Voorbeeldje:

Visual Basic:
1
pad = left(bestandspad,len(bestandspad) - len(dir(bestandspad)))


Alleen het bestand moet wel bestaan...

[ Voor 13% gewijzigd door Verwijderd op 22-01-2004 15:13 ]

Pagina: 1