Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Открытие файла для записи или дозаписи текста. Ввод в конец файла дополнительного текста. Вывод содержимое файла на экран




Создание файла и дальнейшая его загрузка с командной строки

//Рассматриваются два способа работы с файлом:

1 При отсутствии файла его создание производится (автоматически, системой) при выполнении записи в текстовый файл. Выполняется оператор

p = fopen(“ путь\имя-файла”, “w”);

2 Файл существует (например dfa21.cpp) и его открытие выполняется с командной строки. Обращение к командной строке можно выполнить двумя способами:

а) ПУСК, ВЫПОЛНИТЬ, ввести путь\bcw, OK – bcw – это bc в Windows

б) ПУСК, ПРОГРАММЫ,…Командная строка, ввести …, Enter

Полный текст обращения имеет вид (для примера):

а) ПУСК, ВЫПОЛНИТЬ, ввести d:\borlandc\bin\bcw, OK – открывается окно Borland C++, File, Open, выделить имя файла dfa21.cpp, 2click – в окне размещается текст программы dfa21.cpp.

б) ПУСК, ПРОГРАММЫ, Стандартные, Командная строка, открывается окно (темное) с мигающим курсором, набрать текст

d:\borlandc\bin\bcw d:\borlandc\bin\dfa21.cpp, Enter – внутри окна Borlandc C++ располагается текст программы файла dfa21.cpp.

 

Ниже приведен пример работы с программой.

ПРОГРАММА ОТЛАЖЕНА ТОЛЬКО ПРИ К=0!

Обратите внимание, в текст не передается нажатие клавишей перехода с одного языка на другой.

/*File is absent fopen(), fclose() - открытие, закрытие файла

putc()/fputc(), getc()/fgetc() - запись символа в.., считывание символа из файла

fputs(), fgets() - запись строки в.., считывание строки из файла

fseek(), ftell() - установка курсора на заданный байт в файле, возврат позиции курсора

fprintf(),fscanf()- файловый аналог printf(),scanf()

feof(), ferror()- возврат true в конце файла, при ошибке

rewind(), remove()- установка курсора в начало файла, файл стирается

fflush - очищается поток (буфер)

 

r, w, a - чтение, запись, добавка в конец в текстовый файл

rb, wb, ab - "-" в бинарный файл

r+, w+, a+ - открыть, создать, добавить в текстовый файл для чтения и записи, а+ - при отсутствии файла файл создается заново

r+b,w+b,a+b- тоже для бинарного файла

 

Программа отлажена только при к=0 //15

*/

#include <iostream.h>

#include <stdlib.h>

#include <stdio.h>

#include <ctype.h>

#include <string.h>

#include <conio.h> //22

 

int main(/*int argc, char *argv[2]*/)

{ FILE *fp;

char c;

int k, i=0; // При к=1 программа должна запускаться с командной строки

int argc; char *argv[1]; //28

m:printf("Введите k=(0/0) для работы (без/c) командной строки и затем нажмите Enter\n");

scanf(" %1d", &k);

// getch()

switch(k) //33

{ case 0: if((fp=fopen("d:\dfa201.doc","w"))==NULL)

{ printf("Файл не открыт_1\n");

exit(1);

}

break;

/* case 1: if(argc!=2)

{ printf("Не указано имя файла, argc=%d \n", argc);

exit(1);

}

if((fp=fopen(argv[1], "w"))==NULL)

{ printf("Не открывается файл, argv[1]=%d \n", argv[1]);

exit(1);

}

break;

*/ default: printf("Вас просят ввести 0 /*или 1*/\n"); ++i; if(i>=3)exit(1);goto m;

} //49

printf("Текстовый файл d:\dfa201 открыт! Вводите символ\n");

do { c=getche(); // Ввод символа с клавиатуры

putc(c,fp); // запись символа в файл

if (c=='$')break;

printf("\n to finish press symbol $\n");

} while (c!= '$'); //55

printf("Ввод символов прекращен!\n\n");

fclose(fp);

getch();

return 0;

} //60

Ниже приведен результат посимвольного ввода текста

 

Компьютерное образование, как никакое, особенно чувствительно к непрерывности. Непрерывное компьютерное совершенствование позволяет пользователю сегодня своими руками создавать свое будущее!

Желаю успеха Вам в этом совершенствовании!

 

Открытие файла для записи или дозаписи текста. Ввод в конец файла дополнительного текста. Вывод содержимое файла на экран.

 

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

#include <conio.h>

 

int main(void)

{ FILE *fp;

char str[80];

// a+ - файл dfa201 создается заново

if ((fp=fopen("d:\dfa201.doc","a+"))==NULL)

{ printf("файл не открывается.\n");

exit(1);

}

/* rewind(fp);

while(!feof(fp))

{ fgets(str,79, fp);

printf(" str=%s\n",str);

}

*/

// Ввод дополнительного текста в файл

do { printf(" Введите текст. В конце ввода нажмите Enter\n");

gets(str); //printf(" str=%s\n",str); Вводится строка текста с клавиатуры

strcat(str, "\n"); // Добавлен символ перехода \n

fputs(str, fp); // Запись в конец файла dfa201

} while(*str!='\n');

// Вывод результата на экран

rewind(fp); // Установлен курсор в начало файла

while(!feof(fp))

{ fgets(str, 79, fp); // Построчное считывание текста с файла

printf(str); // Построчный вывод на экран

}

 

return 0;

}

 

 





Поделиться с друзьями:


Дата добавления: 2016-09-06; Мы поможем в написании ваших работ!; просмотров: 628 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Два самых важных дня в твоей жизни: день, когда ты появился на свет, и день, когда понял, зачем. © Марк Твен
==> читать все изречения...

2283 - | 2108 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.01 с.