![]() |
TFile.copy Fehler bei Android
Hallo,
ich habe ein ganz komisches Phänomen:
Code:
Im Debugger sehe ich
dsc := TPath.DirectorySeparatorChar;
zipdir := sTempPath + 'zipfiles'; fn1 := extractfilename(Attachment); fn2 := zipdir + dsc + fn1; <---- hier knallt's TFile.copy(Attachment, fn2, true); zipdir = '/storage/emulated/0/Documents/test/temp/zipfiles' dsc = '/' fn1 = 'meine.db' und bekomme in der Zeile fn2 := zipdir + dsc + fn1; folgende Meldung: --------------------------- Benachrichtigung über Debugger-Exception --------------------------- Im Projekt Test.apk ist eine Exception der Klasse EArgumentException mit der Meldung 'Ungültige Zeichen im Pfad' aufgetreten. --------------------------- Anhalten Fortsetzen Hilfe --------------------------- Was kann da los sein? Ciao Stefan |
AW: TFile.copy Fehler bei Android
Auf Android und IOS Pfade und Dateien unbedingt mit TPath.Combine zusammenbauen.
Einfache String-Konkatenation führt zu ungültigen Pfaden, welche eben solche Fehler auslösen. |
AW: TFile.copy Fehler bei Android
Danke für den Tip!
Allerdings scheint da ein anderes Problem vorzuliegen, ich habe den Eindruck, dass beim Debuggen auf Android ein Schritt mit F8 eben nicht wie erwartet die eine Befehlszeile
Code:
abarbeitet, sondern im Hintergrund bereits "weitergearbeitet" wird, ich habe den eigentlichen Fehler lokalisiert, der kommt in Wirklichkeit erst viel später!
fn2 := zipdir + dsc + fn1;
Ciao Stefan |
AW: TFile.copy Fehler bei Android
Dennoch hat AuronTLG Recht, Pfade werden so nicht zusammengebaut, sondern man lässt sie sich von TPath.Combine zusammensetzen. Das ist zum einen OS unabhängig und zum anderen weniger Fehleranfällig. Auch für Windows mache ich das so.
Sherlock |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:39 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz