AGB  ·  Datenschutz  ·  Impressum  







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

Memo Load from File - Leerzeichen im Pfad!

Ein Thema von TRUCKERmas · begonnen am 24. Aug 2012 · letzter Beitrag vom 24. Aug 2012
Antwort Antwort
TRUCKERmas

Registriert seit: 30. Apr 2009
16 Beiträge
 
Delphi 7 Enterprise
 
#1

Memo Load from File - Leerzeichen im Pfad!

  Alt 24. Aug 2012, 22:52
Delphi-Version: 7
Ich versuche ne Datei in nem Pfad zu laden, jedoch passiert folgendes:
(Der Pfad beinhaltet mehrere Leerzeichen)


Ohne hochkommata:
Das System kann den angegebenen Pfad nicht finden
Pfad ist korrekt angegeben in der Fehlermeldung
Mit Hochkommata:
Das System kann den angegebenen Pfad nicht finden, jedoch
sucht er nicht beim Pfad sondern bei
PfadDerExe (mit Hochkommata) + '"' + MeinPfad + '"' (+ '"' Hochkommata vom Pfad der Exe)

Kennt jemand eine Lösung zu dem Problem?
Ich muss die Datei im Memo öffnen um nach bestimmten Zeilen zu suchen und diese zu ändern.
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.366 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Memo Load from File - Leerzeichen im Pfad!

  Alt 24. Aug 2012, 23:01
Hi

Memo1.Lines.LoadFromFile(aFileName); wenn in aFileName der korrekte Dateiname steht, egal ob mit oder ohne Hochkomma, dann läd er die Daten.

Kannst Du mal etwas Code zeigen?
  Mit Zitat antworten Zitat
TRUCKERmas

Registriert seit: 30. Apr 2009
16 Beiträge
 
Delphi 7 Enterprise
 
#3

AW: Memo Load from File - Leerzeichen im Pfad!

  Alt 24. Aug 2012, 23:05
Delphi-Quellcode:
path:='C:\bla\bla bla\falsch';
ExpandFileName(path + '\..');
path:=path+'bla bla bla\';
Memo1.Lines.LoadFromFile(path+'datei.text');
// Somit müsster er C:\bla\bla bla\bla bla bla\datei.text öffnen wollen
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.366 Beiträge
 
Delphi 10.3 Rio
 
#4

AW: Memo Load from File - Leerzeichen im Pfad!

  Alt 24. Aug 2012, 23:09
Schön.. Würdest Du bitte mal debuggen und schauen was er dann wirklich macht? Sprich was in Path steht, wenn LoadFile aufgerufen wird?
  Mit Zitat antworten Zitat
TRUCKERmas

Registriert seit: 30. Apr 2009
16 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: Memo Load from File - Leerzeichen im Pfad!

  Alt 24. Aug 2012, 23:11
Habe gerade nachgeschaut!
ExpandFileName(path + '..'); funktioniert nicht, er geht
nicht in die Parent directory (einen Ordner hoch).

Kennt jemand einen anderen Weg das zu erreichen?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Memo Load from File - Leerzeichen im Pfad!

  Alt 24. Aug 2012, 23:15
Wie wäre es, wenn du in der OH nachliest, was ExpandFileName macht?

A: Das ist keine Prozedur.
B: Funktionen haben einen Rückgabewert, welchen an gerne verwenden darf.
C: Macht die, wie man gerne nachlesen darf, was ganz Anderes, als du von ihr willst.

PS: Weniger bla bla und mehr unterschiedliche Wörter sind irgendwie übersichtlicher.


Tipp: Wenn man in die OH guckt, dann findet man neben ExtractFileName auch noch ExtractFileDir und ExtractFilePath.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (24. Aug 2012 um 23:19 Uhr)
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.366 Beiträge
 
Delphi 10.3 Rio
 
#7

AW: Memo Load from File - Leerzeichen im Pfad!

  Alt 24. Aug 2012, 23:17
Versuch mal

Delphi-Quellcode:
path:='C:\bla\bla bla\falsch'+'\..'+'\bla bla bla\';
Memo1.Lines.LoadFromFile(path+'datei.text');
oder

Delphi-Quellcode:
path:='C:\bla\bla bla\falsch';
Path := ExtractFileName(Path)+'bla bla bla\';
Memo1.Lines.LoadFromFile(path+'datei.text');
die zweite Lösung ist aber etwas böse....

Alternativ: einfach per Stringoperation den letzten Teil des Path abschneiden
  Mit Zitat antworten Zitat
TRUCKERmas

Registriert seit: 30. Apr 2009
16 Beiträge
 
Delphi 7 Enterprise
 
#8

AW: Memo Load from File - Leerzeichen im Pfad!

  Alt 24. Aug 2012, 23:19
Ich habe den Fehler bereits gefunden, es mangelt jetzt nurnoch an einem
Weg einfach den Pfad den ich ihm gebe quasi so zu verändern, das er nicht mehr
in C:\a\b\c ist sonder in C:\a\b

EDIT:

Es läuft, danke an alle
Kann geschlossen werden

Geändert von TRUCKERmas (24. Aug 2012 um 23:21 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Memo Load from File - Leerzeichen im Pfad!

  Alt 24. Aug 2012, 23:21
Zitat:
Delphi-Quellcode:
path:='C:\bla\bla bla\falsch';
Path := ExtractFileName(Path)+'bla bla bla\';
Memo1.Lines.LoadFromFile(path+'datei.text');
Wie gesagt, ExtractFileName ist falsch, denn hier kommt jetzt "falschbla bla bla\datei.text" raus.

Aber das darf man sich gerne mal im Debugger ansehn und/oder in der OH nachlesen, wenn man's nicht glaubt.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.366 Beiträge
 
Delphi 10.3 Rio
 
#10

AW: Memo Load from File - Leerzeichen im Pfad!

  Alt 24. Aug 2012, 23:44
Wie gesagt, ExtractFileName ist falsch, denn hier kommt jetzt "falschbla bla bla\datei.text" raus.
äh.. stimmt... ich meinete ExtractFileDir. Das schneidet bei einem Pfad den hinteren Teil ab. Ist aber nicht wirklich cool - würde ich vorher per String-Operation entsprechend auftrennen.
  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 18:38 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