Маленькая программка:
#include <time.h>
void main()
{
time_t t;
struct tm *local;
char ftime[256];
t = time(NULL);
local = localtime(&t);
strftime(ftime, 127, "%d %b %Y %H:%M", local);
printf("\n%s\n", ftime);
}
Возвращает:
21 May 2006 18:43
Почему то не русской локали, хотя date из bash выдает:
Вск Май 21 18:43:40 MSD 2006
locale из bash выдает:
LANG=ru_RU.KOI8-R
LC_CTYPE="ru_RU.KOI8-R"
LC_NUMERIC="ru_RU.KOI8-R"
LC_TIME="ru_RU.KOI8-R"
LC_COLLATE="ru_RU.KOI8-R"
LC_MONETARY="ru_RU.KOI8-R"
LC_MESSAGES="ru_RU.KOI8-R"
LC_PAPER="ru_RU.KOI8-R"
LC_NAME="ru_RU.KOI8-R"
LC_ADDRESS="ru_RU.KOI8-R"
LC_TELEPHONE="ru_RU.KOI8-R"
LC_MEASUREMENT="ru_RU.KOI8-R"
LC_IDENTIFICATION="ru_RU.KOI8-R"
LC_ALL=ru_RU.KOI8-R
И вот еще:
$ ls -d1 /usr/lib/locale/ru*
/usr/lib/locale/ru
/usr/lib/locale/ru_RU
/usr/lib/locale/ru_RU.koi8r
/usr/lib/locale/ru_RU.koi8-r
/usr/lib/locale/ru_RU.KOI8R
/usr/lib/locale/ru_RU.KOI8-R
$ ls -d1 /usr/share/locale/ru*
/usr/share/locale/ru
/usr/share/locale/ru_RU
/usr/share/locale/ru_RU.koi8r
/usr/share/locale/ru_RU.koi8-r
/usr/share/locale/ru_RU.KOI8R
/usr/share/locale/ru_RU.KOI8-R
На UTF8 перейти не смогу, да и не поможет:
$ export LC_ALL=ru_RU.UTF8
$ export LANG=ru_RU.UTF8
$ /x
21 May 2006 18:43
:-(
Ответ на:
комментарий
от saper
Ответ на:
комментарий
от Chumka
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум как узнать кодировку шрифта в терминале? (2005)
- Форум [arch] (2009)
- Форум отвалилась локаль (2008)
- Форум [Debian]Локаль (2008)
- Форум systemd не включает нужную локаль (2013)
- Форум переменные окружения в sudo (2007)
- Форум sort, просто sort (2010)
- Форум Pure-ftpd проблема с отображением русских букв (2004)
- Форум прямоугольники во Flash (FireFox) вместо кирилицы (2006)
- Форум Не видно локаль (2020)