Member 13089825 Ответов: 1

Замена некоторых специальных символов из cstring vc++ mfc(специальные символы должны быть заключены в кавычки )


У меня есть cstring, и он будет хранить данные ввода пользователя(введенные пользователем данные).
предположим, пользователь вводит "*&#(%^&(("
тогда моя строка, как
Имя группы Cstring;
имя_группы = "*&амп;#(%^&ампер;(("(название группы будет содержать пользователей eneter персонажей)
но я хочу заменить некоторые символы в этом
предположим, если пользователь вошел как " &", то я должен заменить это как " amp"
не могли бы вы подсказать мне, как это решить?

Что я уже пробовал:

Я новичок в МФЦ, так что здесь я понятия не имею

[no name]

https://msdn.microsoft.com/en-us/library/aa300582(v=против 60). aspx

1 Ответов

Рейтинг:
10

Jochen Arndt

Если вы не знаете,как это сделать при использовании определенного класса, сначала взгляните на документ. В этом случае вы можете найти CStringT:: Заменить[^] метод.

Чтобы "TMLify CStringс использованием:

/* Replace '&' first. */
str.Replace(_T("&"), _T("&"));
str.Replace(_T("<"), _T("&lt;"));
str.Replace(_T(">"), _T("&gt;"));
str.Replace(_T("\""), _T("&quot;"));
Для XML замените также символ одинарной кавычки на &apos;


Member 13089825

как найти строку, содержащую символ ‘
я пытался
CString str ("звезды выровнены");
int n = str.Находить('‘')
но он идет как -1 alwyas

Jochen Arndt

Если вам нужно включить символ двойной кавычки в строку или указать одинарную кавычку в качестве символа вы должны экранировать их обратной косой чертой:
str.Find('\'');