AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Trennen von Pfaden

Ein Thema von Chefx · begonnen am 23. Aug 2009 · letzter Beitrag vom 24. Aug 2009
Antwort Antwort
Chefx

Registriert seit: 13. Jun 2009
Ort: Radebeul
241 Beiträge
 
Turbo Delphi für Win32
 
#1

Trennen von Pfaden

  Alt 23. Aug 2009, 22:50
Hey DBs,

Ich hab mal eine frage zu mein Quelltext
Delphi-Quellcode:
function regfile(pfad:string):string;
 var
  stringAL : string;
  i,leng:integer;
 begin
  Result := '';
  for i := 0 to length(pfad) - 1 do if pfad[i] = '/then leng:=i;
  delete(pfad,leng,Length(pfad));
  result:=pfad;
end;
Also ich will diesen
Code:
c:/user/irgendwo/datei.txt
trennen das ich nur noch:
Code:
c:/user/irgendwo/
habe.
Aber ich bekomme so ein hohen integer wert raus das es rein theoretisch bei dem pfad nicht ergeben kann (4347318 ).
Wo leigt mein problem oder geht das noch einfacher mit dem trennen?
ein Sprichwort für Programmierer:
"Viele wege fürn zur EXE, aber ob sie funktioniert ist die andere Frage."
schau mal bei www.xlite.de.tc vorbei
  Mit Zitat antworten Zitat
Benutzerbild von Dunkel
Dunkel

Registriert seit: 26. Mär 2007
Ort: Klingenstadt
541 Beiträge
 
Delphi 2007 Enterprise
 
#2

Re: Trennen von Pfaden

  Alt 23. Aug 2009, 22:57
ExtractFilePath(); oder ExtractFileDir(); sollte Dich wunschlos glücklich machen.
Es ist zu wahr um schön zu sein...
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#3

Re: Trennen von Pfaden

  Alt 23. Aug 2009, 23:07
außerdem: Strings werden nicht bei 0 beginnend gezählt

und meckert dein Compiler nicht zufällig über etwas wie leng könnte undefiniert bzw. nicht initialisiert sein?
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.648 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Trennen von Pfaden

  Alt 23. Aug 2009, 23:55
Zudem ist das Pfadtrennzeichen unter Windows der Backslash und nicht der normale Slash wie im Internet oder unter Linux. Das heißt normalerweise solltest du in einem normalen Pfad gar kein / finden.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
angos

Registriert seit: 26. Mai 2004
Ort: Rheine
549 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Trennen von Pfaden

  Alt 24. Aug 2009, 08:41
das Trennzeichen für Pfade kannst du gut mit "pathdelim" ermitteln (dazu einfach mal in die Hilfe von Delphi schauen).

Das Problem bei dir ist, dass leng, wie Himitsu bereits bemerkt hat, nicht initialisiert ist. Da du nach / suchst, aber / nie in dem Pfad vorkommt, wird leng kein Wert zugewiesen.

Das nur zur Erklärung warum dein Source nicht funktioniert. Ansonsten: Schau dir den Post von Dunkel an und verwende das einfach
Ansgar
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#6

Re: Trennen von Pfaden

  Alt 24. Aug 2009, 09:59
Zitat von jaenicke:
Zudem ist das Pfadtrennzeichen unter Windows der Backslash und nicht der normale Slash wie im Internet oder unter Linux. Das heißt normalerweise solltest du in einem normalen Pfad gar kein / finden.
ist mir garnicht aufgefallen

nja, aber bei externen Quellen und Usereingaben sollte man das / auch mit beachten,
da Windows dieses ebenfalls behandelt
oder man konvertiert es bei der Eingabeprüfung der Werte.
$2B or not $2B
  Mit Zitat antworten Zitat
Chefx

Registriert seit: 13. Jun 2009
Ort: Radebeul
241 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Trennen von Pfaden

  Alt 24. Aug 2009, 18:07
danke für euren antworten
ein Sprichwort für Programmierer:
"Viele wege fürn zur EXE, aber ob sie funktioniert ist die andere Frage."
schau mal bei www.xlite.de.tc vorbei
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz