Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

CString Replace

Empfohlene Antworten

Veröffentlicht

Guten Morgen,

Ich hab da So ein kleines Problem.

ich Soll hier eine resourcen datei Duplizieren und diese dann abändern.

eingelsen ist die alte Resourcen datei, und die liste mit den Strings die abgeändert werden sollen, beides in jeweils ein Stringarray.

alles gut und schön.

jetzt will ich durch die Liste durchgehen und immer wenn der string der geändert werden soll auftaucht soll dieser durch den Neuen String ersetzt werden.


for(k=0;k<j;k=k+2)
{
ListeNeu = ZeilenListe.GetAt(k+1);
ListeAlt = ZeilenListe.GetAt(k);
while(m<ZeilenRes.GetCount())
{
CString Res = ZeilenRes.GetAt(m);
ListeNeu.Delete(0,3);
ListeAlt.Delete(0,3);

int n = Res.Replace((LPCTSTR)ListeAlt,(LPCTSTR)ListeNeu);
if (n!=0) //DEBUG ANFANG
{
n++;
}//DEBUG ENDE
m++;
}
}[/PHP]

Also im Prinzip eine SUCHEN und Ersetzten geschichte.

Trotzdem wenn ich das so aufrufe Ersetzt er mir nichts!!

Programierumgebung: VS 2005

Ich hoffe ihr Könnt mir weiter helfen =)

Danke im vorraus=)

Sorry Falsches Topic =)

for(k=0;k<j;k=k+2)

		{

			ListeNeu = ZeilenListe.GetAt(k+1);

		    ListeAlt = ZeilenListe.GetAt(k);

			ListeNeu.Delete(0,3);

			ListeAlt.Delete(0,3);


			while(m<ZeilenRes.GetCount())

			{


				CString Res		 = ZeilenRes.GetAt(m);



				int	n = Res.Replace((LPCTSTR)ListeAlt,(LPCTSTR)ListeNeu);

				if (n!=0)

				{

				   n++;

				}

				ZeilenResViz.Add((LPCTSTR) Res);

				m++;

			}			

			m=0;

		}

Hab die Aktuelle res in ein Neues Array geschrieben und m auf 0 zurück gesetzt es passiert trotzdem nichts leider

danke schon mal für Die Hilfe :D

so hab die casts rausgenommen,

in dem ZeilenResViz steht jetzt genau das selbe wie im ZeilenRes

und es steht in ListeAlt und ListeNeu aufjedenfall der wert was ersetzt werden sollund in was ersetzt werden soll, laut debugger

ja das kommt da oft drin vor

und der breakpoint wird nicht angelaufen

Res

BEGIN

        MENUITEM "freies holz Fläche",          ID_TOOLS_HOLZFREI_FLAECHE

        MENUITEM "freies holz Fläche erster Punkt", ID_TOOLS_HOLZFREI_FL1

        MENUITEM "freies holz Fläche zweiter Punkt", ID_TOOLS_HOLZFREI_FL2

        MENUITEM "freies holz erster Punkt",    ID_TOOLS_HOLZFREI_PKT1

        MENUITEM "freies holz zweiter Punkt",   ID_TOOLS_HOLZFREI_PKT2

        MENUITEM "freies holz positionieren",   ID_TOOLS_HOLZFREI_POSITION

    END
Liste A: steht für das Wort das ersetzt werden soll und V: steht für das wort in das ersetzt werden soll

A: freies holz

V: Volumen

A: IDR_TEXT1

V: IDR_TEXT2

Folgender Code funktioniert bei mir:

    CString ListeAlt = "A: freies holz";
CString ListeNeu = "V: Volumen";
ListeNeu.Delete(0,3);
ListeAlt.Delete(0,3);
CString Res = " MENUITEM \"freies holz Fläche\", ID_TOOLS_HOLZFREI_FLAECHE";
int n = Res.Replace(ListeAlt,ListeNeu);
[/code]

Bei dir auch?

Bei mir Leider nicht

;-(

er ersetzt immer noch nichts =/

auch nicht wenn ich es hart codiert im code mache

also entweder ich hab nen brett vorm kopf oder ich mach was grundlegendes Falsch

Bearbeitet von EDSCampino

so Problem gelöst,

auf der Rechten seite von ListeAlt und ListeNeu stand noch ein \r\n das man nciht direkt gesehen hat

weg getrimmt und nun klappt es =)

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.