Leerzeichen

Hallo,


also mein Problem mit Excel hab ich gelöst! Ich kann jetzt *.csv-Dateien öffnen! Aber jetzt ist ein anderes Problem aufgetreten.
Noch kurz vorab!

Dem Pfad zum speichern der Datei wird mittels eines FolderBrowser an einen String übergeben. Der Benutzer hat also keinen möglichkeit den Pfad per Hand einzugeben.


Nun zu meinem Problem:

Wenn als Speicherpfad meiner Datei z.B.
C:\Dokumente und Einstellungen\User\Desktop\Test\name.csv
angegeben wurde und ich folgenden Aufruf mache um die Datei mittels Excel zu öffnen
Process.Start("EXCEL.EXE", pfad);
kann er die Datei nur öffnen wenn KEINE Leerzeichen in dem Pfad enthalten sind!

Frage: Wie kann ich es schaffen, dass er trotzdem diese Datei, auch wenn im Pfad Leerzeichen enthalten sind, Sie trotzdem öffnen kann.

Wäre cool wenn mir einer von euch helfen kann.

Grüße

Jo:)
 
Hi

Einfach am Anfang und am Ende ein Hochkomma hinzufügen !

pfad = " ' " + pfad + " ' " ;

Aber Die Leerzeichen zwischen den " musst du entfernen !

DarkGreetinx LordDeath
 
Das ist das Problem

Das ist ja genau das Problem dass ich hab! Ich habe keine Ahnung wie man Leerzeichen aus einem String rausmacht! Ausserdem darf man Sie ja nicht rausmachen weil ja sonst der Pfad nicht mehr stimmt! Für Leerzeichen muss es ja irgendein Platzerhalter geben

\n bewirkt einen Zeilenumbruch! Und sowas gibts bestimmt auch für Leerzeichen! Und wenn es so was gibt, dass ist immer noch die Frage offen wie ich des an die richtige stelle bekomme!

Grüße

Jo:)
 
Nein du hast mich falsch verstanden


pfad = " ' " + pfad + " ' " ;

Mach einfach das
So wie es oben steht sollst du es lesen können
in den Quelltext schreibst du es so:


pfad = "'" + pfad + "'" ;

DarkGreetinx LordDeath
 
DU müsstest doch einfach die Leerzeichen durch %20 ersetzten können. Das sollte doch gehen.

pfad.Replace(" ","%20");

wenn pfad ein String ist :)


ciao Anke
 
Achtung, aufpassen.
Diese Variante funktioniert nicht bei jedem System. Hier unter XP Prof. SP 1 funktioniert es definitiv nicht. Gerade getestet.
 
Hi!

Zum Entfernen von Zeichen (auch Leerzeichen) aus einem String nutzt man die Replace-Methode der String-Klasse.

Code:
System.String s = this.textBox1.Text;
this.textBox1.Text = s.Replace(" ","");
Wobei auch mehrere aufeinander folgende Leerzeichen komplett entfernt werden. Dies funktioniert übrigens auch unter WinXP Pro mit SP 1 ;) .

MfG
..::SD::..
 
Hallo SixDark,


wenn man nun aber in diesem Fall die Leerzeichen einfach rauslöschen wird, würde man zum Beispiel den Ordner "Mein Ordner" nicht mehr finden, weil er dann "MeinOrdner" draus machen würde...
 

Neue Beiträge

Zurück