vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Re: pfad über relative angabe finden 
Autor: devnull
Datum: 04.12.03 18:42

Mit "relativem Bezug" meinst Du Angaben mit ".." oder auch folgende Situation?

Pfadangabe: c:\windows\desktop
Relativer Bezug: ordner\unterordner\hallo.txt
Daraus wird: c:\windows\desktop\ordner\unterordner\hallo.txt
Egal. Die folgende Beschreibung müsste immer funktionieren:

sPfad = Pfadangabe
sRel = Relativer Bezug
sErgebnis = Ergebnispfad
 
sErgebnis = sPfad
While Left$(sRel, 3) =  "..\" 
   sErgebnis = Left$(sErgebnis, InStrRev(sErgebnis, "\") - 1)
   sRel = Mid$(sRel, 4)
Wend
 
sErgebnis = sErgebnis & "\" & sRel
Beispiel: Pfadangabe = c:\windows\desktop
Relativer Pfad zur Datei = ..\system\mscomctl.ocx

sErgebnis = c:\windows\desktop
Linken drei Zeichen von sRel = "..\", also wird in sErgebnis von rechts das erste Vorkommen von "\" gesucht, das ist an Position 11. Die linken 10 Zeichen von sErgebnis werden übernommen = "c:\windows". Von sRel wird "..\" vorne abgeschnitten = "system\mscomctl.ocx"
Linken drei Zeichen von sRel ungleich "..\". Also ist While-Schleife zuende.

An sErgebnis wird ein "\" und anschließend sRel angehängt = "c:\windows\system\mscomctl.ocx"

Eventuelle Fehlersituationen (z.B. bei "..\" geht's im Ursprungspfad nicht weiter zurück) musst Du dann noch selber abfangen.

Gruß,
Thomas
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
pfad über relative angabe finden414Jan9904.12.03 14:58
Re: pfad über relative angabe finden390devnull04.12.03 18:42

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel