Wie kann ich die 'Datei: \\' aus dem Rückgabewert von Path.GetDirectoryName () in C # entfernen
string path = Path.GetDirectoryName(
Assembly.GetAssembly(typeof(MyClass)).CodeBase);
Ausgabe:
file:\d:\learning\cs\test\test.xml
Was ist der beste Weg, um wieder nur d:\learning\cs\test\test.xml
file:\\
werfen eine Ausnahme, wenn ich rufe doc.Save(returnPath)
jedoch doc.Load(returnPath)
; funktioniert gut. Danke.
Kommentar zu dem Problem
InformationsquelleAutor der Frage Nano HE | 2010-06-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie möchten, dass das Verzeichnis der Versammlung der Klasse, können Sie mit der
Assembly.Location
Eigenschaft:Dies ist nicht genau das gleiche wie die
CodeBase
Eigenschaft, obwohl. DieLocation
ist der "Pfad oder UNC-Pfad der geladenen Datei enthält das manifest," in der Erwägung, dass dieCodeBase
ist der "Speicherort der assembly, wie ursprünglich angegeben, zum Beispiel in ein AssemblyName-Objekt".InformationsquelleAutor der Antwort Chris Schmich
InformationsquelleAutor der Antwort Matthew Flaschen
InformationsquelleAutor der Antwort Moe Sisko
Mein Erster Ansatz wäre wie folgt...
InformationsquelleAutor der Antwort The King
verwenden Sie die string-Methode substring zu packen, den Namen der Datei nach Datei:\
InformationsquelleAutor der Antwort VoodooChild
Diese Weise fügt die exe-Datei-Namen am Ende ( C:\Folder\project\project\bin\debug\myapp.exe\xyz.txt ) .
String ersetzen, ist die sicherste Lösung ist meiner Meinung nach.
InformationsquelleAutor der Antwort mesutuk