1 / 1 / 1
Регистрация: 05.10.2014
Сообщений: 32
|
||||||
1 | ||||||
Колода карт, считать данные из файла в кодировке Unicode01.11.2014, 04:53. Просмотров 1139. Ответов 11
Метки нет Все метки)
(
Здравствуйте, я имею необычную задачу, а именно, хочу считать из файла данные такого типа
2♥ 3♥ 4♥ 5♥ 6♥ 7♥ 8♥ 9♥ 10♥ Валет♥ Дама♥ Король♥ Туз♥ 2♦ 3♦ 4♦ 5♦ 6♦ 7♦ 8♦ 9♦ 10♦ Валет♦ Дама♦ Король♦ Туз♦ 2♣ 3♣ 4♣ 5♣ 6♣ 7♣ 8♣ 9♣ 10♣ Валет♣ Дама♣ Король♣ Туз♣ 2♠ 3♠ 4♠ 5♠ 6♠ 7♠ 8♠ 9♠ 10♠ Валет♠ Дама♠ Король♠ Туз♠ но этот файл сохраняется только в кодировке юникода. как считать его правильно?
0
|
|
01.11.2014, 04:53 | |
Колода из 36 карт. Кол-во способов выбрать 5 карт Реализовать структуру "Колода карт"; сформировать случайную перетасовку карт для трёх игроков колода карт |
|
28 / 23 / 12
Регистрация: 25.08.2013
Сообщений: 42
|
||||||
03.11.2014, 19:01 | 2 | |||||
1
|
6916 / 5981 / 2709
Регистрация: 14.04.2014
Сообщений: 25,504
|
|
03.11.2014, 19:21 | 3 |
А почему binary?
0
|
1 / 1 / 1
Регистрация: 05.10.2014
Сообщений: 32
|
|
03.11.2014, 22:35 [ТС] | 4 |
Извините, но ничего не работает(
0
|
2702 / 1872 / 553
Регистрация: 05.06.2014
Сообщений: 5,426
|
|
03.11.2014, 22:58 | 5 |
Вам с минимальными плясками с бубном? Тогда сохранить файл в utf-16, string поменять на wstring, ifstream на wifstream, перед кавычками строковых и символьных констант поставить L (L"это текст в utf-16"). Ну, по крайней мере перед кавычками тех констант, которые вы будете сравнивать с прочитанным (L'♥'). Впрочем, при попытке все это вывести на экран все равно прядется прыгать с бубном. У вас же с вероятностью 99% Винда, у которой консоль далеко не в юникоде работает.
0
|
46 / 41 / 20
Регистрация: 17.03.2014
Сообщений: 131
|
|
04.11.2014, 00:59 | 6 |
в книге Лафоре был хороший пример о генерации колоды карт и действии с ними. Написано доступно и просто. Посмотрите, возможно вам поможет
1
|
2702 / 1872 / 553
Регистрация: 05.06.2014
Сообщений: 5,426
|
|
04.11.2014, 01:01 | 7 |
Человеку нужна не генерация, а корректное чтение псевдографики из текстового файла.
0
|
46 / 41 / 20
Регистрация: 17.03.2014
Сообщений: 131
|
|
04.11.2014, 01:49 | 8 |
![]() Решение
Зависит от поставленной задачи. Если есть возможность, я бы посоветовал передавать значение масти как переменную типа int, осуществляя форматированный вывод уже в программе. При таком подходе вопрос кодировки отпадает сам собой (у Лафоре реализован как раз такой подход, мне кажется очень удобным).
Если нет, и мой совет не по адресу - извиняйте, что отнял время ![]()
1
|
07.11.2014, 11:12 | 9 |
Елена, в реальной жизни не так много людей, которым приходится читать из unicode файлов. Другими словами, на практике почти всегда можно изменить условия так, чтобы этого не пришлось делать. Возможно преподаватель поставил такие условия: прочитать из unicode файла, а то не поставлю зачёт. Это печально. А если задание - это написать карточную игру и это вы сами решили читать псевдографику из unicode файла, то можно читать из обычного файла целые числа, каждое из которых означает масть. Можете ли вы озвучить изначальное задание?
1
|
1 / 1 / 1
Регистрация: 05.10.2014
Сообщений: 32
|
|
07.11.2014, 13:15 [ТС] | 10 |
Спасибо большое за помощь) Мне действительно удалось не использовать Unicode, поставила себе такую задачу, потому что хотелось узнать, как можно считать файл подобного типа.
1
|
DiffEreD
|
07.11.2014, 14:27
#11
|
Не по теме: Хотел проверить код StailGot, но оказывается что в MinGW(4.9.1) почему то отсутствует заголовок codecvt. Походу только на VS прокатит.
0
|
2702 / 1872 / 553
Регистрация: 05.06.2014
Сообщений: 5,426
|
|
07.11.2014, 14:32 | 12 |
codecvt - C++11. Он полноценно поддерживается далеко не везде. Особенно, если мы говорим о каком ни будь Дебиане, где версии компиляторов из стабл и тестинг ветки заметно различаются.
0
|
07.11.2014, 14:32 | |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь. колода карт Колода карт Колода карт Колода карт Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |