Форум программистов, компьютерный форум, киберфорум
Boost C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
 Аватар для DiffEreD
1458 / 795 / 257
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2

Date Time вывод названия месяца по русски

17.03.2014, 14:31. Показов 2144. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как вывести месяц по русски на консоль в Windows?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <boost/date_time/gregorian/gregorian.hpp>
 
using namespace boost::gregorian;
 
int main()
{
   date d(2004, Feb, 29);
   date_facet* facet(new date_facet("%B"));
 
   //std::cout.imbue(std::locale(std::locale("rus_rus.1251"), facet));
   //std::cout.imbue(std::locale(std::locale("rus_rus.866"), facet));
   //std::cout.imbue(std::locale(std::locale("ru_RU.UTF-8"), facet));
   //std::locale::global(std::locale("ru_RU.UTF-8"));
   std::cout.imbue(std::locale(std::locale(""), facet));
 
   std::cout << "Month: " << d << "\n";
 
   return 0;
}
Постоянно выкидывает исключение
locale::facet::_S_create_c_locale name not valid
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.03.2014, 14:31
Ответы с готовыми решениями:

Вывод месяца по русски
Делаю запрос: SELECT CONCAT(LEFT(`lastname`,20),' ', `firstname`) AS username, DATE_FORMAT(`date_added`, '%d %M %Y') AS data, ...

Вывод дня недели или месяца по русски (Java 8)
private String getDayOfWeek(LocalDate date){ DayOfWeek dayOfWeek = date.getDayOfWeek(); ...

Вывод названия месяца
Задание:Напишите скрипт, который запрашивает номер (от 1 до 12) и выводит название месяца и времени года. Помогите пожалуйста, не могу...

2
Эксперт С++
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
17.03.2014, 19:00
Компилятор GCC? Когда я последний раз смотрел, в его стандартной библиотеке локали были недоделаны и не функционировали. Возможно, они недоделаны и по сию пору.
0
 Аватар для DiffEreD
1458 / 795 / 257
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
18.03.2014, 14:47  [ТС]
Да, GCC 4.8.2

Добавлено через 19 часов 44 минуты
Проблему решил так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream>
#include <sstream>
#include <boost/date_time/gregorian/gregorian.hpp>
#include <boost/locale.hpp>
#include <windows.h>
 
using namespace boost::gregorian;
using namespace boost::locale;
 
std::string utf8_encode(const std::wstring &wstr)
{
   int size_needed = WideCharToMultiByte(CP_ACP, 0, &wstr[0], (int)wstr.size(), NULL, 0, NULL, NULL);
   std::string strTo(size_needed, 0);
   WideCharToMultiByte                  (CP_ACP, 0, &wstr[0], (int)wstr.size(), &strTo[0], size_needed, NULL, NULL);
   return strTo;
}
 
int main()
{
   SetConsoleCP (1251); SetConsoleOutputCP (1251);
 
   date d(2004, Feb, 29);
   wdate_facet* facet(new wdate_facet(L"%B"));
 
   generator gen;
   std::wstringstream ss;
   ss.imbue(std::locale(std::locale(gen("ru_RU.UTF-8")), facet));
   ss << d;
   std::cout << utf8_encode(ss.str());
 
   return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.03.2014, 14:47
Помогаю со студенческими работами здесь

Вывод названия текущего месяца
void __fastcall TForm1::Button4Click(TObject *Sender) { Label3-&gt;Caption=strftime(int %#B); }Вот функция, нужно просто вывести...

Вывод названия месяца по заданному числу
С клавиатуры вводится цифра от 1 до 12 и справа должно выдаваться название месяца, соответствующий введенной цифре. Нужно это сделать с...

Вывод названия месяца, который пользователь вводит
Здравствуйте! Пользователь вводит с клавиатуры месяц, а в отчете должна отображаться вся информация по документам ДО этого месяца. Но в...

Вывод названия месяца года или сообщения об ошибке
написать программу, которая запрашивает у пользователя номер месяца года, затем выводит название этого месяца года или сообщение об ошибке,...

Real time clock error - Check date and time setting
Всех приветствую! Ноутбук Lenovo b590, после помывки и просушки мат платы, при включении стал выдавать сею картину(на скриншоте). В...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Киев стоит - украинская песня
zorxor 28.01.2026
wfWdiRqdTxc О Господи, Вечный, Ты . . . Я помоги, Бесконечный. . . Я прошу Ты. . . Я погибаю, спаси. . . Я прошу Тебя Вечный. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru