Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/43: Рейтинг темы: голосов - 43, средняя оценка - 4.95
0 / 0 / 0
Регистрация: 06.06.2011
Сообщений: 12

fopen и путь к файлу c русскими буквами

06.06.2011, 20:40. Показов 8625. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет
Вот столкнулся с такой проблемой - необходимо открыть файл, путь к которому вводится в консоли. Для открытия файла использую сишную функцию fopen, при этом файлы, путь к которым содержит только латинские буквы, успешно открываются(указатель не указывает NULL), а если в пути появляются русские буквы(т.е. UTF-8), то файл просто не открывается(указатель указывает на NULL).
WinApi'шные функции CharToOem и AnsiToOem не помогли, а с функцией _wfopen не разобрался. Уважаемые эксперты, прошу Вашей помощи. Заранее благодарен
P.S. вот, собственно, сам исходник
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
 
using namespace std;
 
int main()
{
    char filename[1024];
    cin.getline(filename, sizeof(filename));
    FILE* in = fopen(filename, "r");
    if(in == NULL) cout << "Error opening file";
    else cout << "File was successfully opened";
    system("PAUSE");
    return 0;
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.06.2011, 20:40
Ответы с готовыми решениями:

Fopen не видит путь к файлу
#include &lt;stdio.h&gt; #include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;string&gt; #include &lt;vector&gt; #include &lt;map&gt; typedef...

Как передать путь к файлу в функцию fopen, если имеется пробел?
Подскажите пожалуйста как передать путь в fopen, если путь содержит пробелы? Программу запускаю из командной строки и она принимает путь...

Дан файл, содержащий текст, записанный строчными русскими буквами. Получить в другом файле тот же текст, записанный заглавными буквами
Дан файл, содержащий текст, записанный строчными русскими буквами. Получить в другом файле тот же текст, записанный заглавными буквами.

4
 Аватар для pito211
187 / 174 / 18
Регистрация: 22.03.2010
Сообщений: 612
06.06.2011, 20:45
если уж ты используешь iostream то пользуйся и fstream
0
0 / 0 / 0
Регистрация: 06.06.2011
Сообщений: 12
06.06.2011, 22:50  [ТС]
Цитата Сообщение от pito211 Посмотреть сообщение
если уж ты используешь iostream то пользуйся и fstream
весьма полезное замечание, но моя проблема так и остается в силе
0
 Аватар для igorrr37
2893 / 2040 / 992
Регистрация: 21.12.2010
Сообщений: 3,790
Записей в блоге: 9
06.06.2011, 23:21
Цитата Сообщение от swed Посмотреть сообщение
CharToOem и AnsiToOem
OemToCharA
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <cstdio>
#include <windows.h>
using namespace std;
 
int main()
{
    char filename[1024];
    cin.getline(filename, sizeof(filename));
    OemToCharA(filename, filename);
    FILE* in = fopen(filename, "r");
    if(in == NULL) cout << "Error opening file";
    else cout << "File was successfully opened";
    return 0;
}
1
0 / 0 / 0
Регистрация: 06.06.2011
Сообщений: 12
06.06.2011, 23:49  [ТС]
igorrr37, спасибо, все заработало
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.06.2011, 23:49
Помогаю со студенческими работами здесь

Проблема с русскими буквами
Всем привет! Столкнулся с проблемой: по идее, когда вводишь русскую маленькую букву, то должен выходить плюсик, но так происходит только на...

Почта с русскими буквами
Здравствуйте комрады, возникла небольшая проблема :) написал модуль для бронирования столиков посредством уведомлений по почте, и возникла...

Работа с русскими буквами
Люди, помогите, пожалуйста, ещё с одной проблемой. Как обрабатывать русские буквы в Microsoft Visual Studio C++ 2010 ? Использовал функцию...

Вывод русскими буквами
Вообщем в задачке нужно рассчитать всевозможные тройки ФИО. #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;cstring&gt; ...

проблемы с русскими буквами...
V My Sql'e russkimi buklvami problemy ....tam ne ponyatniye sybvoly please pomogite kak nastroit ...tam prosto na prosto netu ruskih...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru