mbstowcs () не работает для специального символа - PullRequest
0 голосов
/ 23 марта 2011

Я использую XML, созданный Windows.он содержит символ авторского права.Я должен взять этот файл и проанализировать его в моем приложении Linux C ++.Я должен использовать функцию mbstowcs, но эта функция не может проанализировать символ авторского права (R), который выглядит так: \ 302 \ 256.

любое предложение?

10x!

1 Ответ

1 голос
/ 23 марта 2011

Какая кодировка файла? Было ли это записано как многобайтовая строка или это в UTF-8? UTF-8 не обязательно совпадает с многобайтовой строкой, поэтому вам может потребоваться выполнить преобразование самостоятельно, если вы не можете прочитать UTF-8 (немного сложно для потоков C ++). Я использую решение с открытым исходным кодом ( UTF8-CPP ) для своих преобразований, и оно отлично работает в Linux и Windows. Это позволяет вам использовать std :: string и std :: wstring для выполнения всех операций преобразования (широкая строка в utf-8 и наоборот).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...