Форум программистов, компьютерный форум CyberForum.ru

чтение данных из открытого файла (fread) - C++

Восстановить пароль Регистрация
 
-J_O_K_E_R-
 Аватар для -J_O_K_E_R-
3 / 3 / 0
Регистрация: 29.07.2013
Сообщений: 82
01.10.2013, 21:16     чтение данных из открытого файла (fread) #1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
if (_wfopen_s(&f, file_name,  L"rtS, ccs=UTF-8") == 0){
            
 
                
            fread((void*)rf, sizeof(wchar_t),  512, f);
 
            
                         fclose(f);
            _wremove(file_name);
              wprintf_s(rf); 
 
 
}
содержимое открытого файла нужно поместить в буфер для дальнейших манипуляций с ним

как сделать чтобы выводил все содержимое файла??

ставлю за вместо 512 , 1024 выкидывает из проги...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.10.2013, 21:16     чтение данных из открытого файла (fread)
Посмотрите здесь:

Чтение данных из файла C++
Бинарное чтение из файла с пoмощью функции fread() C++
Чтение данных из файла C++
C++ чтение данных из файла
fwrite\fread: чтение и запись в бинарные файлы C++
C++ Чтение данных из файла
C++ Считывание из файла (fread) в вектор
Чтение данных из файла C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
02.10.2013, 03:23     чтение данных из открытого файла (fread) #2
Цитата Сообщение от -J_O_K_E_R- Посмотреть сообщение
как сделать чтобы выводил все содержимое файла??
Сначала определяют размер файла, потом выделяют память под этот размер, потом туда читают.

Добавлено через 1 минуту
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
43
44
45
46
47
48
49
50
51
52
#include <stdlib.h>
#include <stdio.h>
 
int main()
{
    FILE * fd = fopen( "input.txt", "rb" );
 
    if( !fd )
    {
        fputs( "Could not open file for read - check if the file exists and if you have permission to read it.", stderr );
        return -1;
    }
 
    // перемотать на конец файла
    fseek( fd, 0, SEEK_END );
 
    // получить размер файла
    long file_size = ftell( fd );
 
    // буфер под весь файл
    char * buffer = (char*) malloc( file_size );
 
    if( !buffer )
    {
        fclose( fd );
        fputs( "Could not allocate memory for file buffer. File could be empty or too large.", stderr );
        return -1;
    }
 
    // перейти на начало файла
    fseek ( fd , 0, SEEK_SET );
 
    if( file_size != fread( buffer, 1, file_size, fd ) )
    {
        free( buffer );
        fclose( fd );
        fputs( "Read data size is not equal to actual file size.", stderr );
        return -1;
    }
 
    fclose( fd );
 
    /* файл теперь в памяти */
 
    // разделяй, упрощай, выполняй...
    // например, вывести его на stdout
    puts( buffer );
 
    free( buffer );
 
    return 0;
}
Yandex
Объявления
02.10.2013, 03:23     чтение данных из открытого файла (fread)
Ответ Создать тему
Опции темы

Текущее время: 10:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru