Im AnsiString ein Zeichen Ändern



  • Hallo,
    wie kann man in einem AniString an einer bestimmten stelle ein '\' einfügen?
    Ich habe die Indexposition.



  • Hallo

    Ja, siehe die AnsiString-Methoden in der BCB-Hilfe.

    bis bald
    akari



  • Nehm mir das nicht übel, da habe ich schon geschaut. Über AnsiString direkt finde ich dort nichts. Auch dessen Methoden sind nur teilhaft aufgelistet. Daher habe ich hier gepostet. Das ist auch der Grund, warum deine Antwort mir so garnicht weiter hilft. Trotzdem danke.



  • Welche Version hast Du denn? Sowohl im BCB 5, als auch im BCB 6 ist die Hilfe äußerst erschöpfend... Ich kann mir nicht vorstellen, dass man diese bei den Nachfolgeversionen 'kastriert' hat. Schließlich ist der AnsiString eine der meistverwendeten Klassen im BCB.

    Was heißt denn Einfügen auf englisch? Wie könnte die gesuchte Methode wohl heißen?

    Und Du bist sicher, dass Du nur ein '\' einfügen willst? Stichwort Eacape-Sequenzen.



  • Danke, ich habe es mal versucht mit Insert und delete.

    Hat geklappt.
    Die Hilfe besitze ich wirklich nicht.

    AnsiString ConvertSlashDelimitre(AnsiString Path)
    {
    	bool bDeliExists   	= true;
    	int iDelimiterIndex = 0;
    
    	while (bDeliExists) {
    		iDelimiterIndex =  Path.Pos("/");
    		if (iDelimiterIndex != 0) {
    			Path = 	Path.Delete(iDelimiterIndex,1);
    			Path = Path.Insert("\\",iDelimiterIndex);
    		} else {
    			bDeliExists = false;
    		}
    	}
    	return Path;
    }
    

    Danke trotzdem.



  • Warum sagst du nicht gleich, dass du alle Vorkommen eines Zeichens durch ein anderes ersetzen willst?

    Path = StringReplace(Path, "/", "\\", TReplaceFlags() << rfReplaceAll);
    


  • Noob2 schrieb:

    Die Hilfe besitze ich wirklich nicht.

    Kann ich mir nicht vorstellen. Borland / CodeGear vertreibt die Produkte nicht ohne Hilfe...


Anmelden zum Antworten