Русские буквы в пути

Тема в разделе "MS Visual C++", создана пользователем coin, 20 май 2008.

Статус темы:
Закрыта.
  1. coin

    coin Гость

    Нет, не уезжают от нас никуда русские буквы в голубом вагоне, не о них речь.

    Никто не знает в чем может быть загвоздка:

    Код (Text):
    char name [] = "D:\\1\\рашнбуквы\\ice.bmp";
    ifstream strm (name);
    При инициализации таким образом (Ms VS 2005) из потока льется волшебная чушь. Присутствие русских букв обязательно, куда копать?
     
  2. shisik

    shisik Well-Known Member

    Регистрация:
    26 авг 2007
    Сообщения:
    154
    Симпатии:
    0
    Копать в сторону unicode
     
  3. coin

    coin Гость

    Разобрался, shisik`у спасибо
     
  4. shisik

    shisik Well-Known Member

    Регистрация:
    26 авг 2007
    Сообщения:
    154
    Симпатии:
    0
    Только Unicode в Windows 9x работать не будет. Там имена файлов и папок представлены в ANSI. Поэтому при написании универсальной программы следует определять версию ОС и в зависимости от неё определять или ANSI- или Unicode-строки.
     
  5. coin

    coin Гость

    Да, как зарубку в памяти нужно оставить.
    Чегото с каждым днем все больше думаю, кудаж я блин лезу... :)
     
  6. misterio

    misterio Гость

    А как быть с русскими буквами в Console Application?
     
  7. shisik

    shisik Well-Known Member

    Регистрация:
    26 авг 2007
    Сообщения:
    154
    Симпатии:
    0
    На 100% не отвечаю, но по-моему кодировку надо поменять на ДОСовскую, только я никогда этого не делал.
     
  8. gamecreator

    gamecreator Гость

    а как быть с нежеланием пользоваться поиском?
     
  9. alexsid

    alexsid Гость

    юзай setlocale
     
  10. shisik

    shisik Well-Known Member

    Регистрация:
    26 авг 2007
    Сообщения:
    154
    Симпатии:
    0
    Вот нашел отличное решение:
    Код (Text):
    char str[] = "Текст на русском языке";
    char *tmp = new char[strlen(str) + 1];
    CharToOemA(str, tmp);
    cout << tmp << endl;
    delete [] tmp;
    cin.get();
     
  11. European

    Регистрация:
    4 сен 2006
    Сообщения:
    2.580
    Симпатии:
    0
    Вопрос кодировки уже набил оскомину, пользуйтесь поиском господа.
    Закрыто
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей