Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
ArkTaS
1 / 1 / 0
Регистрация: 01.07.2013
Сообщений: 127
#1

Чтение файла через API - C++

17.09.2013, 22:51. Просмотров 448. Ответов 5
Метки нет (Все метки)

Доброго времени суток! Создаю здесь тему повторно т.к в разделе Win Api никто не читает изменил код для удобства. Помогите разобраться почему не читает файл. Файл создал правой кнопкой мыши, txt формат, в файле записано несколько цифр, атрибуты не трогал. Для ReadFile в качестве 1-го параметра пробовал handle от FindFirstFile но не читает. Попробовал открыть ф-й CreateFile но открыть не удается.
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
33
34
35
36
37
/#include <iostream>
#include <windows.h>
#include <winbase.h>
 
using namespace std;
 
void main()
{
    setlocale( LC_ALL,"Russian" ); 
    WIN32_FIND_DATA sss;
    HANDLE f,d;
 
 
    f = FindFirstFile(L"E:\\Sanni.txt", &sss);
    if (f != INVALID_HANDLE_VALUE)
    {
         char dest[100]; 
         DWORD buf;
         if (  !ReadFile(f, dest, sizeof(dest), &buf, NULL)  ) 
          cout<<endl<< " Чтение не удалось ";
          cout<<endl<<dest;
        
        d=CreateFile(L"E:\\Sanni.txt", GENERIC_ALL, FILE_SHARE_WRITE | FILE_SHARE_READ |FILE_SHARE_DELETE,  NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
        if(d !=INVALID_HANDLE_VALUE)
        {
          cout<<endl<< " Открытие удалось "; 
        }
        else
        cout<<endl<< "INVALID_HANDLE_VALUE";
    }
    else
    cout<<endl<< " Файл не найден";
 
    FindClose(f);
    cout<<endl;
    system("pause");
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.09.2013, 22:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Чтение файла через API (C++):

Запись файла через одно приложение, а чтение через другое - C++
Есть 2 консольные программы. 1-я пишет в файл &quot;z&quot; текст, 2-я читает с файла &quot;z&quot; этот текст и работает с ним. Подскажите как...

Чтение файла через while - C++
Делаю лабу, но не знаю какое условие писать в while ибо обычное !feof(file) не подходит, выдаёт ошибку. void Read_Data_Base(Data_base ...

Чтение файла через ifstream в stringstream - C++
Помогите разобраться, есть функция LOAD_DATA(std::string path_File) для чтения файла по пути открываю файл через ifstream, и не могу...

Создание/открытие файлов, чтение из файла и запись в файл через наследование - C++
Имеется следующая иерархия классов: Файл, Типизированный файл, Текстовый файл Методы: Создать/Открыть файл, Чение из файла, Запись в...

Переделать в коде чтение из файла в чтение с клавиатуры - C++
Переделайте что бы текст считывался с клавиатуры, а не с файла! Буду благодарен за помощь! //файл должен начинаться со слова, между...

Чтение из файла. Повторное чтение файла - C++
Добрый день. Необходимо реализовать в программе функцию повторного чтения данных из файла, в случае некорректного ввода их в оный. Вот...

5
alsav22
5426 / 4821 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
17.09.2013, 23:29 #2
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
33
34
35
36
37
38
39
40
41
42
#include <iostream>
#include <windows.h>
#include <winbase.h>
 
using namespace std;
 
void main()
{
    setlocale( LC_ALL,"Russian" ); 
    WIN32_FIND_DATA sss;
    HANDLE f,d;
 
   
    f = FindFirstFile(L"E:\\Sanni.txt", &sss);
    if (f != INVALID_HANDLE_VALUE)
    {
        
        f = CreateFileA("E:\\Sanni.txt", GENERIC_READ|GENERIC_WRITE, 0, 0, OPEN_ALWAYS, 0, 0);
        if (f == INVALID_HANDLE_VALUE)
        {
            printf("Error open file\n");
        }
        else 
        {
            cout << endl <<  " Открытие удалось " << endl; 
        
             char dest[100]; 
             DWORD buf;
             if (!ReadFile(f, dest, sizeof(dest), &buf, NULL)) 
                    cout << endl << " Чтение не удалось ";
             cout << endl << dest;
        }
        
        
    }
    else cout<<endl<< " Файл не найден";
   
 
    FindClose(f);
    cout<<endl;
    system("pause");
}
1
ArkTaS
1 / 1 / 0
Регистрация: 01.07.2013
Сообщений: 127
17.09.2013, 23:30  [ТС] #3
Так ну открывать теперь начал. Дело было в GENERIC_ALL, поменял на GENERIC_WRITE. Посмотрим что дальше
0
alsav22
5426 / 4821 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
17.09.2013, 23:44 #4
Цитата Сообщение от ArkTaS Посмотреть сообщение
Посмотрим что дальше
...
1
Миниатюры
Чтение файла через API  
ArkTaS
1 / 1 / 0
Регистрация: 01.07.2013
Сообщений: 127
18.09.2013, 01:08  [ТС] #5
alsav22, Вы меня не правильно поняли, если взглянуть на время вашего и моего сообщения
Цитата Сообщение от ArkTaS Посмотреть сообщение
Так ну открывать теперь начал. Дело было в GENERIC_ALL, поменял на GENERIC_WRITE. Посмотрим что дальше
то они написаны в одно и тоже время. То есть, я еще не видел вашего кода когда отправлял сообщение. Поэтому не стоит воспринимать это на свой счет. И за помощь конечно от меня благодарность
0
alsav22
5426 / 4821 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
18.09.2013, 01:10 #6
Цитата Сообщение от ArkTaS Посмотреть сообщение
alsav22, Вы меня не правильно поняли, если взглянуть на время вашего и моего сообщения то они написаны в одно и тоже время. То есть, я еще не видел вашего кода когда отправлял сообщение. Поэтому не стоит воспринимать это на свой счет. И за помощь конечно от меня благодарность
На время я, конечно, не посмотрел, но я ничего, ни на чей счёт, не воспринял. Просто показал, что у меня этот код работает.
0
18.09.2013, 01:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.09.2013, 01:10
Привет! Вот еще темы с ответами:

Преобразование текстового файла в двоичный и чтение исходных данных из двоичного файла. - C++
#include&lt;iostream&gt; #include&lt;fstream&gt; #include&lt;locale.h&gt; #include&lt;iomanip&gt; #include &lt;cstdlib&gt; using namespace std; struct...

Чтение нескольких структур и одной переменной из бинарного файла. Формат файла имеется - C++
Формат файла состоит из 3 структур и одной переменной. Подробное описание формата во вложении, просьба посмотреть его. У меня возникла...

как может корректно выполняющийся оператор >> (чтение из текстового файла) негативно влиять на открытие другого файла? - C++
Друзья! Создадим два текстовых файла, f_0.txt и f_1.txt и что-нибудь в них запизаем, например в первый запихаем 1234 а во второй 5678 и...

Чтение файла с несколькими знаками конца файла - C++
В файле несколько раз встречается ноль, и ни как не получается прочитать его полностью. Как можно решить данную проблему ?


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru