|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|||||||||||
Преобразование String UTF8 в 125131.08.2014, 19:10. Показов 23067. Ответов 22
Метки нет (Все метки)
Нашел пример:
![]() Помогите хоть немножко!
0
|
|||||||||||
| 31.08.2014, 19:10 | |
|
Ответы с готовыми решениями:
22
Запрошено преобразование от ‘const std::string*’ к нескалярному типу ‘std::string’ |
|
6 / 6 / 0
Регистрация: 14.10.2012
Сообщений: 36
|
|||||||||||
| 31.08.2014, 20:09 | |||||||||||
|
Для перехода от string к const char* (неизменяемому массиву символов в куче) используйте метод c_str():
p.s. Вы используете массивы символов на стеке (char arrayName[]). Вместо используемого выше варианта с указателями(char*) вполне можно использовать и их, синтаксис останется таким же. (вызов std::string(arrayName) эквивалентен std::string(&arrayName[0]), т.е. arrayName в данном случае приводится к char*)
1
|
|||||||||||
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|
| 31.08.2014, 21:04 [ТС] | |
|
Вторая часть кода подошла, но не первая. Она работает, но мне нужно другое:
std::string (или std::wstring) в wchar_t
0
|
|
|
6 / 6 / 0
Регистрация: 14.10.2012
Сообщений: 36
|
||||||
| 31.08.2014, 21:22 | ||||||
|
Аналогично
1
|
||||||
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
||||||
| 31.08.2014, 21:49 | ||||||
Сообщение было отмечено Tester64 как решение
Решение
Tester64, тут еще ведь нужно понимать, что L"строка" - это не UTF8. Это скорее UTF16 или USC2, если рассматривать windows.
Конвертирование же именно UTF8 в CP1251 под windows можно так сделать:
1
|
||||||
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
||||||
| 31.08.2014, 22:25 [ТС] | ||||||
|
ИДЕАЛЬНО!
Правда прилось еще добавить
0
|
||||||
|
383 / 281 / 31
Регистрация: 04.09.2009
Сообщений: 1,225
|
|
| 01.09.2014, 01:47 | |
|
Хм, все бегут без оглядки от CP1251 и от всяких понаехавших "кодовых страниц", а тут наоборот, UTF-8 не нравится
0
|
|
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
||
| 01.09.2014, 01:50 | ||
![]() Всех все равно не переубедишь. Я тут сперва написал большой пост про пользу юникода и почему подстраиваться под устаревшую вин консоль (с дос кодировкой по умолчанию) не обязательно, но потом стер.
0
|
||
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|||
| 01.09.2014, 03:48 [ТС] | |||
|
Пока-что перевод нужен был ТОЛЬКО для отладочных сообщений в консоль, хотя бывает необходимость и при работе с файлами кодировку заменить и со старым сервером через сеть пообщаться... Пусть себе лежит в коллекции. Заодно понял как строки конвертировать между разными типами (char-wchar-string), а это похоже крайне необохдимые знания в с++ p.s. Для ускорения вызова батников даже утилиту на делфи написал для вызова батников по горячим клавишам. И их принудильного перезапуска (перекомпиляция). ИМХО самое быстрое изученение... IDE много перепробовал - все тормозят сильно. Сборка пустышки под VC++ занимала минимум 20-30 секунд. Как и под DevCPP. Консоль (когда тормозит) за 7-8 секунд собирает, а если ускоряется около 3х секунд (почти догнал паскаль)...
0
|
|||
|
Ушел с форума
|
|
| 01.09.2014, 09:43 | |
|
0
|
|
| 01.09.2014, 10:28 | |
|
Можно в вики почитать про юникод. Вообще, по нему полно ресурсов, например кратко и популярно: http://zelserg.livejournal.com/2570.html
1
|
|
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|||||||
| 01.09.2014, 18:06 [ТС] | |||||||
А что такое юникод и чем он отличается от других кодировок, я думаю большинство и так знает. Но у него есть и свои минусы! По делфям помню (переводил проект с Delphi7 на Delphi2009) - каждый символ кодируется не одним байтом (как в других кодировках), от 2х до 4х!. Причем это плавающая величина и зависит от языка. И хранение в файлах и в памяти подобных строк увеличилось в 2-4 раза. Причем есть разные реализации юникода в разных ОС. Старые не поддерживали 4 а значит возможен глюк. Добавлено через 11 минут А вообще, инетересно, кто-нибудь (из Вас) еще кодит для консоли? Под Win или Linux? Слышал (активно не работал) что весь линукс работает в консоли и в основном написана на с/с++
0
|
|||||||
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
|||||||||
| 01.09.2014, 18:26 | |||||||||
. Но консольные утилиты там гораздо лучше себя чувствуют, чем в windows, в том числе засчет развитой командной оболочки. Кстати в любом линуксе по-умолчанию используется кодировка юникода UTF-8.
0
|
|||||||||
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
||
| 02.09.2014, 17:36 [ТС] | ||
|
0
|
||
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
||
| 02.09.2014, 18:17 | ||
|
Есть прикладное ПО, которое может быть с графическим или текстовым интерфейсом. Пользовательский интерфейс - это только малая часть процесса разработки ПО, поэтому вакансии "кодить под консоль" и не найдешь. Потому что обычно "кодят", чтобы решить некую задачу, а текстовый у этой программы будет интерфейс или графический - это не столь важно, это системные архитекторы и дизайнеры пусть решают. Причем, помимо прикладного ПО есть еще куча разного системного и околосистемного софта: сервисы, библиотеки, драйвера, embedded ПО, ядра ОС, физические движки игр и т.д. и т.п., для которых вообще не применимо понятие пользовательский интерфейс (или этот интерфейс штука специфическая, например две кнопки на устройстве вкл. и выкл.). Эта категория тоже занимает довольно ощутимую долю рынка. Мы ее не рассматриваем что ли?
1
|
||
|
Модератор
|
||
| 02.09.2014, 20:58 | ||
|
0
|
||
|
-41 / 49 / 5
Регистрация: 10.01.2017
Сообщений: 1,915
|
||
| 05.11.2020, 14:09 | ||
|
Вроде бы MultiByteToWideChar - конвертирует Из указанной в первом параметре кодировке ---> всегда в UTF-16 ? Добавлено через 5 минут Блин, понял, сначала конвертируем из UTF8 в UTF16, а потом из UTF16 в CP1251. А с точки зрения производительности - это ж двойные затраты получаются ? Может есть более быстрый способ конвертации между кодировками ?
0
|
||
| 05.11.2020, 14:09 | |
|
Помогаю со студенческими работами здесь
20
Преобразование string* в string Преобразование string в int Преобразование string в int Преобразование string в int Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|