AnsiString str = "FFF\\u1114CCC";
WideString wStr = AnsiString(str);
int p = 0;
while ( (p = wStr.Pos(L"\\u")) > 0)
{
int nCode = StrToInt( wStr.SubString(p + 2, 4) );
wStr.Delete(p, 6);
wStr.Insert(WideString((wchar_t)nCode), p);
}
unicode-преобразование
\u0435\u0589...и т.д. Каким образом это можно преобразовать в набор AnsiString-строк?
Читаешь в WideString затем AnsiString(const WideString &src);
Цитата: oxotnik333
Читаешь в WideString затем AnsiString(const WideString &src);
Нет, меня не так поняли....
Файл уже содержит строки в Ansi-кодировке!!! но надо их интерпретировать как юникод, т.е. встречая группу символов \uxxxx, где xxxx-цифры, заменять ее на соответсвующий коду символ.
Цитата: Babandr
Нет, меня не так поняли....
Файл уже содержит строки в Ansi-кодировке!!! но надо их интерпретировать как юникод, т.е. встречая группу символов \uxxxx, где xxxx-цифры, заменять ее на соответсвующий коду символ.
Файл уже содержит строки в Ansi-кодировке!!! но надо их интерпретировать как юникод, т.е. встречая группу символов \uxxxx, где xxxx-цифры, заменять ее на соответсвующий коду символ.
Трудно догадаться чеговы вообще хотите. Делайте тогда массив перекодировок.
Цитата: Babandr
Есть текстовый файл, содержащий строки в виде:
\u0435\u0589...и т.д. Каким образом это можно преобразовать в набор AnsiString-строк?
\u0435\u0589...и т.д. Каким образом это можно преобразовать в набор AnsiString-строк?
Если я вас правильно понял, то приблизительно так
Код: