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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.69
xotabs
0 / 0 / 0
Регистрация: 10.11.2008
Сообщений: 26
#1

Как создавать, записывать в файл - C++

01.12.2008, 22:09. Просмотров 1578. Ответов 16
Метки нет (Все метки)

Добрый вечер! Подскажите пожалуйста, как создавать, записывать в файл, ввод имён файлов с клавиатуры, читение данных из файла. Если можно с примерами.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.12.2008, 22:09     Как создавать, записывать в файл
Посмотрите здесь:

Как записывать в файл символы с пробелами? - C++
как записывать в файл символы с пробелами? Есть структура struct sport_complex{ struct services{ char s_name; char...

Как записывать в текстовый файл, многократно - C++
Допустим дана программа int main (){ int i; int ch="123456"; for (i=0;i<6;i++){ if (ch%2==0) // запись в какой-то...

Как правильно открывать файл и записывать/читать из него - C++
Как правильно открывать файл и записывать/читать из него? На разных сайтах и учебниках есть различные примеры етого но везде разные ...

Как можно сгруппировать по 8 элементов вектора, чтобы записывать в файл? - C++
Есть vector<bool> mas(300000); как можно сгруппировать по 8 элементов этого вектора, чтобы записывать в файл. Ведь в файл запись...

Как записывать в txt-файл определенные строки из xml-файлов? - C++
Подскажите, с чего мне начать, заранее спасибо.

Как можно записывать в существующие файл, в котором уже есть информация? - C++
#include <cstdlib> #include <cstdio> #include <fstream> #include <string> #include <iostream> #include <cstdlib> int View(int...

Записывать в файл результаты - C++
Всем доброго времени суток. Написал игру крестики-нолики. 1) Всё отлично кроме того, что при ничье просто очищается экран и не выводит...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vourhey
Почетный модератор
6477 / 2252 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
01.12.2008, 22:52     Как создавать, записывать в файл #2
cplusplus.com
Alirp
55 / 50 / 1
Регистрация: 04.05.2008
Сообщений: 273
02.12.2008, 08:22     Как создавать, записывать в файл #3
Берешь хорошую книгу по С++ и смотришь, там всё это есть.
xotabs
0 / 0 / 0
Регистрация: 10.11.2008
Сообщений: 26
02.12.2008, 16:00  [ТС]     Как создавать, записывать в файл #4
Подскажите, где ошибка?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>;
#include <conio.h>;
 
void main()
{
    FILE *fo;
    fo=fopen("c:\\tmp\\test.txt","wt");
    /*if ((fo=fopen("c:\\tmp\\test.txt","wt"))==0)
    {
        printf("Error");
    }*/
    fprintf(fo,"Hello World");
    fclose(fo);
    getch();
}
Vourhey
Почетный модератор
6477 / 2252 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
02.12.2008, 16:07     Как создавать, записывать в файл #5
На фиг ты проверку закоментировал? Кстати, она у тебя неправильная.
Код
	if(fo == NULL)
	{
		printf("error opening");
		getch();
		return;
	}
Это во-первых.
А во-вторых, откеуда мне знать, почему у тебя ошибка. Может, директория tmp не создана вообще, может, прав нет, может файл открыт не shared. Дальше перечислять не буду.
xotabs
0 / 0 / 0
Регистрация: 10.11.2008
Сообщений: 26
02.12.2008, 16:08  [ТС]     Как создавать, записывать в файл #6
Приведи пример создания файла и записи в него какой-то информации!
Vourhey
Почетный модератор
6477 / 2252 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
02.12.2008, 16:12     Как создавать, записывать в файл #7
Ты его уже написал выше.

P. S. писать такие простые примеры самому мне лень.
Spo1ler
292 / 52 / 3
Регистрация: 22.05.2008
Сообщений: 788
02.12.2008, 16:35     Как создавать, записывать в файл #8
Не устану повторять ссылку http://www.cplusplus.com/reference/iostream/fstream/
xotabs
0 / 0 / 0
Регистрация: 10.11.2008
Сообщений: 26
02.12.2008, 16:39  [ТС]     Как создавать, записывать в файл #9
У меня всё время вот эту ошибку пишет. http://xmages.net/out.php/i57372_0000000000000.jpg
Spo1ler
292 / 52 / 3
Регистрация: 22.05.2008
Сообщений: 788
02.12.2008, 17:20     Как создавать, записывать в файл #10
Причем тут файлы? У тебя просто несколько ф-ций main.
xotabs
0 / 0 / 0
Регистрация: 10.11.2008
Сообщений: 26
02.12.2008, 18:31  [ТС]     Как создавать, записывать в файл #11
Ты прав!
Подскажи как ввести имя файла с клавиатуры, а то что-то никак не получается.
Spo1ler
292 / 52 / 3
Регистрация: 22.05.2008
Сообщений: 788
02.12.2008, 18:57     Как создавать, записывать в файл #12
Самый простой способ -
C++
1
2
char filename[256];
std::cin.getline(filename, 255);
Но тут налагается ограничение, как видишь. Но обычно его не превышают.
xotabs
0 / 0 / 0
Регистрация: 10.11.2008
Сообщений: 26
02.12.2008, 19:07  [ТС]     Как создавать, записывать в файл #13
А елси через указатели, а то я так что-то не понимаю.

Добавлено через 7 минут 53 секунды
И ещё, не подскажешь почему не работает?
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
#include <stdio.h>
#include <conio.h>
 
void main ()
{
    FILE *f1,*f2;
    f1=fopen("c:\\tmp\\name_1.txt","w");
    //fprintf(fo,"Hello world\n\n");
    int i;
    int a[5], b[5];
    /***********************/
    for (i=0; i<5; i++)
    {
        printf("Input num: ");
        scanf("%d",&a[i]);
        fprintf(f1,"%d\n",a[i]);
    }
    fclose(f1);
    /***********************/
    f1=fopen("c:\\tmp\\name_1.txt","r");
    for (i=0; i<5; i++)
    {
    fscanf(f1,"%d",b[i]);   
    }
    fclose(f1);
    /**********************/
    f2=fopen("c:\\temp\\name_2.txt","wt");
    for (i=0; i<5; i++)
    {
        b[i]=b[i]+5;
        fprintf(f2,"%d\n",b[i]);
    }
    fclose(f2);
        getch();
}
Spo1ler
292 / 52 / 3
Регистрация: 22.05.2008
Сообщений: 788
02.12.2008, 19:08     Как создавать, записывать в файл #14
Что через указатели? Тут и так есть указатель.
Советую почитать книгу и, извините, не парить нам мозг теми вопросами, которые книга может изложить лучше чем мы.
xotabs
0 / 0 / 0
Регистрация: 10.11.2008
Сообщений: 26
02.12.2008, 19:42  [ТС]     Как создавать, записывать в файл #15
Пишу как ты говоришь, но всё равно получается имя filename_1.txt
C++
1
2
3
char filename_1[256];
    std::cin.getline(filename_1, 255);
    f1=fopen("c:\\tmp\\filename_1.txt","w");
=TrappeR=
3 / 3 / 1
Регистрация: 02.12.2008
Сообщений: 11
02.12.2008, 19:54     Как создавать, записывать в файл #16
Недавно отвечал на подобный вопрос, поэтому не лень выложить исходник:
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
#include <stdio.h>
#include <conio.h>
int main(int argc, char *argv[ ])
{
    FILE *fin;
    FILE *fout;
    if (argc != 3) {  /* Проверка командной строки */
        printf("\n Формат вызова программы:");
        printf("\n copyfile.exe");
        printf("\n файл-источник файл-приемник");
    }
    if ((fin = fopen(argv[1], "r")) == NULL) {
    /* Открытие вх. файла */
        perror(argv[1]);
        return 1;
    }
    if ((fout = fopen(argv[2], "w")) == NULL) {
    /* Открытие вых. файла */
        perror(argv[2]);
        return 1;
    }
 
    char ch, buf[100] = "";
    int i = 0;
    do {  /* цикл сохранения во временную переменную и 
                вывода в потоки всех символов кроме пробела
                и одиночных символов */
        ch = fgetc(fin);
        if (ch != ' ' && ch != EOF)
            buf[i++] = ch;
        else {
            if (i > 1) {
                fputs(buf, fout);
                printf("%s", buf);
            }
            i = 0;
        }
        buf[i] = '\0';
    } while (ch != EOF);
 
    fclose(fin);
    fclose(fout);
    getch( );
    return 0;
}
Кстати вся верхняя часть из книги Подбельского - прог. на СИ, почитай на досуге.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.12.2008, 20:01     Как создавать, записывать в файл
Еще ссылки по теме:

Сведения о машине можно считывать/записывать в файл - C++
Помогите пожалуйста, программа выполняет два действия. Если 1 - в файл записывается марка машины, вес, номер (а000аа). Если 2 -...

Fstream не может и записывать в файл, и считывать из него? - C++
fstream file(&quot;as.txt&quot;); int number = 7; file &lt;&lt; number; int numb; file &gt;&gt; numb; cout &lt;&lt; numb &lt;&lt; endl; file.close(); Такой,...

Можно ли заставить класс записывать самого себя в файл? - C++
то есть class A{ int q,w,e; bool Write(); }; main(){ A a1; a1.write();// и он записывает сам себя в файл, не...

Файловые операции: генерировать файл, читать, редактировать, записывать - C++
Попалось задание на заочке, немного не представляю, как его сделать на плюсах (тем более чтобы работало на Borland C++ 5). Кто может...

Программа должна сортировать данные в алфавитном порядке и записывать их в файл - C++
2.Напишите программу, которая запрашивает у пользователя имя, фамилию, дату рождения, номер группы. Программа должна сортировать данный а...


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

Или воспользуйтесь поиском по форуму:
УЫЕУЕ
2 / 2 / 0
Регистрация: 04.11.2008
Сообщений: 37
02.12.2008, 20:01     Как создавать, записывать в файл #17
Цитата Сообщение от xotabs Посмотреть сообщение
Пишу как ты говоришь, но всё равно получается имя filename_1.txt
Код
char filename_1[256];
    std::cin.getline(filename_1, 255);
	f1=fopen("c:\\tmp\\[COLOR="Red"]filename_1[/COLOR].txt","w");
Вспоминается Райкин:
- Как ваша фамилия?
- Горидзе.
- А зовут вас как?
- Авас.
- Меня Николай Степанович, а вас?
- Авас.
- Меня Николай Степанович, а вас?
- Авас.
- Меня Николай Степанович! А вас?!
- Авас.
Yandex
Объявления
02.12.2008, 20:01     Как создавать, записывать в файл
Ответ Создать тему
Опции темы

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