This document provides an overview of files and file handling in C programming. It discusses key concepts like defining and opening files, different modes for opening files, input/output functions like getc(), putc(), fscanf(), fprintf(), getw(), putw(), closing files, error handling, random access to files, and using command line arguments. Functions like fopen(), fclose(), feof(), ferror() are explained. Examples are given to demonstrate reading from and writing to files in text and binary formats.
Contents:-
Introduction
What is a File?
High Level I/O Functions
Defining & Opening a File
Closing a File
The getc and putc Functions
The getw and putw Functions
The fprintf and fscanf Functions
Concept of file, Opening and closing of file, Modes, Input/ output function, Random access in file, Printing a file
A file represents a sequence of bytes on the disk where a group of related data is stored. File is created for permanent storage of data. It is a ready made structure.
In C language, we use a structure pointer of file type to declare a file.....
Contents:-
Introduction
What is a File?
High Level I/O Functions
Defining & Opening a File
Closing a File
The getc and putc Functions
The getw and putw Functions
The fprintf and fscanf Functions
Concept of file, Opening and closing of file, Modes, Input/ output function, Random access in file, Printing a file
A file represents a sequence of bytes on the disk where a group of related data is stored. File is created for permanent storage of data. It is a ready made structure.
In C language, we use a structure pointer of file type to declare a file.....
The MHA program’s case competition showcases the knowledge and skills gained throughout the rigorous curriculum into an end-of-first year integrative experience.
This presentation highlights the work done by two other exceptional students and myself in a team effort that addresses the challenges facing a complex health care organization through an in-depth analysis and corresponding action plan.
Hai guys...
Pada kesempatan kali ini saya akan membagikan ppt mengenai ilmu pengetahuan, dimana kami sedikit menyinggung mengenai pengertian ilmu dan pengetahuan, komponen-komponen ilmu pengetahuan, struktur ilmu pengetahuan.
semoga bermanfaat yaaa :)
Hi guys..
Pada kesempatan kali ini saya membagikan ppt materi pola dan barisan. Nah, pada ppt ini saya sedikit menyinggung definisi pola, macam-macam pola, serta definisi barisan bilangan, menentukan barisan berikutnya, dan menentukan barisan ke-n.
Semoga ppt ini dapat membantu, walau hanya sedikt semoga tetap bermanfaat :)
C Programming Language is the most popular computer language and most used programming language till now. It is very simple and elegant language. This lecture series will give you basic concepts of structured programming language with C.
Safalta Digital marketing institute in Noida, provide complete applications that encompass a huge range of virtual advertising and marketing additives, which includes search engine optimization, virtual communication advertising, pay-per-click on marketing, content material advertising, internet analytics, and greater. These university courses are designed for students who possess a comprehensive understanding of virtual marketing strategies and attributes.Safalta Digital Marketing Institute in Noida is a first choice for young individuals or students who are looking to start their careers in the field of digital advertising. The institute gives specialized courses designed and certification.
for beginners, providing thorough training in areas such as SEO, digital communication marketing, and PPC training in Noida. After finishing the program, students receive the certifications recognised by top different universitie, setting a strong foundation for a successful career in digital marketing.
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Dr. Vinod Kumar Kanvaria
Exploiting Artificial Intelligence for Empowering Researchers and Faculty,
International FDP on Fundamentals of Research in Social Sciences
at Integral University, Lucknow, 06.06.2024
By Dr. Vinod Kumar Kanvaria
Thinking of getting a dog? Be aware that breeds like Pit Bulls, Rottweilers, and German Shepherds can be loyal and dangerous. Proper training and socialization are crucial to preventing aggressive behaviors. Ensure safety by understanding their needs and always supervising interactions. Stay safe, and enjoy your furry friends!
Read| The latest issue of The Challenger is here! We are thrilled to announce that our school paper has qualified for the NATIONAL SCHOOLS PRESS CONFERENCE (NSPC) 2024. Thank you for your unwavering support and trust. Dive into the stories that made us stand out!
Acetabularia Information For Class 9 .docxvaibhavrinwa19
Acetabularia acetabulum is a single-celled green alga that in its vegetative state is morphologically differentiated into a basal rhizoid and an axially elongated stalk, which bears whorls of branching hairs. The single diploid nucleus resides in the rhizoid.
This presentation includes basic of PCOS their pathology and treatment and also Ayurveda correlation of PCOS and Ayurvedic line of treatment mentioned in classics.
This slide is special for master students (MIBS & MIFB) in UUM. Also useful for readers who are interested in the topic of contemporary Islamic banking.
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...Levi Shapiro
Letter from the Congress of the United States regarding Anti-Semitism sent June 3rd to MIT President Sally Kornbluth, MIT Corp Chair, Mark Gorenberg
Dear Dr. Kornbluth and Mr. Gorenberg,
The US House of Representatives is deeply concerned by ongoing and pervasive acts of antisemitic
harassment and intimidation at the Massachusetts Institute of Technology (MIT). Failing to act decisively to ensure a safe learning environment for all students would be a grave dereliction of your responsibilities as President of MIT and Chair of the MIT Corporation.
This Congress will not stand idly by and allow an environment hostile to Jewish students to persist. The House believes that your institution is in violation of Title VI of the Civil Rights Act, and the inability or
unwillingness to rectify this violation through action requires accountability.
Postsecondary education is a unique opportunity for students to learn and have their ideas and beliefs challenged. However, universities receiving hundreds of millions of federal funds annually have denied
students that opportunity and have been hijacked to become venues for the promotion of terrorism, antisemitic harassment and intimidation, unlawful encampments, and in some cases, assaults and riots.
The House of Representatives will not countenance the use of federal funds to indoctrinate students into hateful, antisemitic, anti-American supporters of terrorism. Investigations into campus antisemitism by the Committee on Education and the Workforce and the Committee on Ways and Means have been expanded into a Congress-wide probe across all relevant jurisdictions to address this national crisis. The undersigned Committees will conduct oversight into the use of federal funds at MIT and its learning environment under authorities granted to each Committee.
• The Committee on Education and the Workforce has been investigating your institution since December 7, 2023. The Committee has broad jurisdiction over postsecondary education, including its compliance with Title VI of the Civil Rights Act, campus safety concerns over disruptions to the learning environment, and the awarding of federal student aid under the Higher Education Act.
• The Committee on Oversight and Accountability is investigating the sources of funding and other support flowing to groups espousing pro-Hamas propaganda and engaged in antisemitic harassment and intimidation of students. The Committee on Oversight and Accountability is the principal oversight committee of the US House of Representatives and has broad authority to investigate “any matter” at “any time” under House Rule X.
• The Committee on Ways and Means has been investigating several universities since November 15, 2023, when the Committee held a hearing entitled From Ivory Towers to Dark Corners: Investigating the Nexus Between Antisemitism, Tax-Exempt Universities, and Terror Financing. The Committee followed the hearing with letters to those institutions on January 10, 202
Introduction to AI for Nonprofits with Tapp NetworkTechSoup
Dive into the world of AI! Experts Jon Hill and Tareq Monaur will guide you through AI's role in enhancing nonprofit websites and basic marketing strategies, making it easy to understand and apply.
Delivering Micro-Credentials in Technical and Vocational Education and TrainingAG2 Design
Explore how micro-credentials are transforming Technical and Vocational Education and Training (TVET) with this comprehensive slide deck. Discover what micro-credentials are, their importance in TVET, the advantages they offer, and the insights from industry experts. Additionally, learn about the top software applications available for creating and managing micro-credentials. This presentation also includes valuable resources and a discussion on the future of these specialised certifications.
For more detailed information on delivering micro-credentials in TVET, visit this https://tvettrainer.com/delivering-micro-credentials-in-tvet/
Unit 8 - Information and Communication Technology (Paper I).pdfThiyagu K
This slides describes the basic concepts of ICT, basics of Email, Emerging Technology and Digital Initiatives in Education. This presentations aligns with the UGC Paper I syllabus.
How to Add Chatter in the odoo 17 ERP ModuleCeline George
In Odoo, the chatter is like a chat tool that helps you work together on records. You can leave notes and track things, making it easier to talk with your team and partners. Inside chatter, all communication history, activity, and changes will be displayed.
A Strategic Approach: GenAI in EducationPeter Windle
Artificial Intelligence (AI) technologies such as Generative AI, Image Generators and Large Language Models have had a dramatic impact on teaching, learning and assessment over the past 18 months. The most immediate threat AI posed was to Academic Integrity with Higher Education Institutes (HEIs) focusing their efforts on combating the use of GenAI in assessment. Guidelines were developed for staff and students, policies put in place too. Innovative educators have forged paths in the use of Generative AI for teaching, learning and assessments leading to pockets of transformation springing up across HEIs, often with little or no top-down guidance, support or direction.
This Gasta posits a strategic approach to integrating AI into HEIs to prepare staff, students and the curriculum for an evolving world and workplace. We will highlight the advantages of working with these technologies beyond the realm of teaching, learning and assessment by considering prompt engineering skills, industry impact, curriculum changes, and the need for staff upskilling. In contrast, not engaging strategically with Generative AI poses risks, including falling behind peers, missed opportunities and failing to ensure our graduates remain employable. The rapid evolution of AI technologies necessitates a proactive and strategic approach if we are to remain relevant.
How to Build a Module in Odoo 17 Using the Scaffold MethodCeline George
Odoo provides an option for creating a module by using a single line command. By using this command the user can make a whole structure of a module. It is very easy for a beginner to make a module. There is no need to make each file manually. This slide will show how to create a module using the scaffold method.
2. Console oriented Input/Output
Console oriented – use terminal (keyboard/screen)
scanf(“%d”,&i) – read data from keyboard
printf(“%d”,i) – print data to monitor
Suitable for small volumes of data
Data lost when program terminated
Busy Bee Workshop – FileBusy Bee Workshop – File
3. Real-life applications
Large data volumes
Need for flexible approach to store/retrieve data
Concept of files
Busy Bee Workshop – FileBusy Bee Workshop – File
4. Files
File – place on disk where group of related data is stored
E.g. your C programs, executables
High-level programming languages support file operations
Naming
Opening
Reading
Writing
Closing
Busy Bee Workshop – FileBusy Bee Workshop – File
5. Defining and opening file
To store data file in secondary memory (disk) must
specify to OS
Filename (e.g. sort.c, input.data)
Data structure (e.g. FILE)
Purpose (e.g. reading, writing, appending)
Busy Bee Workshop – FileBusy Bee Workshop – File
6. Filename
String of characters that make up a valid filename for OS
May contain two parts
Primary
Optional period with extension
Examples: a.out, prog.c, temp, text.out
Busy Bee Workshop – FileBusy Bee Workshop – File
7. General format for opening file
fp
contains all information about file
Communication link between system and program
Mode can be
r open file for reading only
w open file for writing only
a open file for appending (adding) data
FILE *fp; /*variable fp is pointer to type FILE*/
fp = fopen(“filename”, “mode”);
/*opens file with name filename , assigns identifier to fp */
Busy Bee Workshop – FileBusy Bee Workshop – File
8. Different modes
Writing mode
if file already exists then contents are deleted,
else new file with specified name created
Appending mode
if file already exists then file opened with contents safe
else new file created
Reading mode
if file already exists then opened with contents safe
else error occurs.
FILE *p1, *p2;
p1 = fopen(“data”,”r”);
p2= fopen(“results”, w”);
Busy Bee Workshop – FileBusy Bee Workshop – File
9. Additional modes
r+ open to beginning for both reading/writing
w+ same as w except both for reading and writing
a+ same as ‘a’ except both for reading and writing
Busy Bee Workshop – FileBusy Bee Workshop – File
10. Closing a file
File must be closed as soon as all operations on it completed
Ensures
All outstanding information associated with file flushed out from
buffers
All links to file broken
Accidental misuse of file prevented
If want to change mode of file, then first close and open again
Busy Bee Workshop – FileBusy Bee Workshop – File
11. Closing a file
pointer can be reused after closing
Syntax: fclose(file_pointer);
Example:
FILE *p1, *p2;
p1 = fopen(“INPUT.txt”, “r”);
p2 =fopen(“OUTPUT.txt”, “w”);
……..
……..
fclose(p1);
fclose(p2);
Busy Bee Workshop – FileBusy Bee Workshop – File
12. Input/Output operations on filesC provides several different functions for reading/writing
getc() – read a character
putc() – write a character
fprintf() – write set of data values
fscanf() – read set of data values
getw() – read integer
putw() – write integer
read() – read data from binary file
write() – write data into binary file
Busy Bee Workshop – FileBusy Bee Workshop – File
13. getc() and putc()
handle one character at a time like getchar() and
putchar()
syntax: putc(c,fp1);
c : a character variable
fp1 : pointer to file opened with mode w
syntax: c = getc(fp2);
c : a character variable
fp2 : pointer to file opened with mode r
file pointer moves by one character position after every
getc() and putc()
getc() returns end-of-file marker EOF when file end
reached
Busy Bee Workshop – FileBusy Bee Workshop – File
14. Program to read/write using getc/putc
#include <stdio.h>
main()
{ FILE *fp1;
char c;
f1= fopen(“INPUT”, “w”); /* open file for writing */
while((c=getchar()) != EOF) /*get char from keyboard until CTL-Z*/
putc(c,f1); /*write a character to INPUT */
fclose(f1); /* close INPUT */
f1=fopen(“INPUT”, “r”); /* reopen file */
while((c=getc(f1))!=EOF) /*read character from file INPUT*/
printf(“%c”, c); /* print character to screen */
fclose(f1);
} /*end main */
Busy Bee Workshop – FileBusy Bee Workshop – File
15. fscanf() and fprintf()
similar to scanf() and printf()
in addition provide file-pointer
given the following
file-pointer f1 (points to file opened in write mode)
file-pointer f2 (points to file opened in read mode)
integer variable i
float variable f
Example:
fprintf(f1, “%d %fn”, i, f);
fprintf(stdout, “%f n”, f); /*note: stdout refers to screen */
fscanf(f2, “%d %f”, &i, &f);
fscanf returns EOF when end-of-file reached
Busy Bee Workshop – FileBusy Bee Workshop – File
16. getw() and putw()
handle one integer at a time
syntax: putw(i,fp1);
i : an integer variable
fp1 : pointer to file ipened with mode w
syntax: i = getw(fp2);
i : an integer variable
fp2 : pointer to file opened with mode r
file pointer moves by one integer position, data stored in
binary format native to local system
getw() returns end-of-file marker EOF when file end
reached
Busy Bee Workshop – FileBusy Bee Workshop – File
17. C program using getw, putw,fscanf, fprintf
#include <stdio.h>
main()
{ int i,sum1=0;
FILE *f1;
/* open files */
f1 = fopen("int_data.bin","w");
/* write integers to files in binary
and text format*/
for(i=10;i<15;i++) putw(i,f1);
fclose(f1);
f1 = fopen("int_data.bin","r");
while((i=getw(f1))!=EOF)
{ sum1+=i;
printf("binary file: i=%dn",i);
} /* end while getw */
printf("binary sum=%d,sum1);
fclose(f1);
}
#include <stdio.h>
main()
{ int i, sum2=0;
FILE *f2;
/* open files */
f2 = fopen("int_data.txt","w");
/* write integers to files in binary
and text format*/
for(i=10;i<15;i++) printf(f2,"%dn",i);
fclose(f2);
f2 = fopen("int_data.txt","r");
while(fscanf(f2,"%d",&i)!=EOF)
{ sum2+=i; printf("text file: i=
%dn",i);
} /*end while fscanf*/
printf("text sum=%dn",sum2);
fclose(f2);
}
Busy Bee Workshop – FileBusy Bee Workshop – File
18. On execution of previous Programs
binary file: i=10
binary file: i=11
binary file: i=12
binary file: i=13
binary file: i=14
binary sum=60,
text file: i=10
text file: i=11
text file: i=12
text file: i=13
text file: i=14
text sum=60
Busy Bee Workshop – FileBusy Bee Workshop – File
19. Errors that occur during I/O
Typical errors that occur
trying to read beyond end-of-file
trying to use a file that has not been opened
perform operation on file not permitted by ‘fopen’ mode
open file with invalid filename
write to write-protected file
Busy Bee Workshop – FileBusy Bee Workshop – File
20. Error handling
given file-pointer, check if EOF reached, errors while
handling file, problems opening file etc.
check if EOF reached: feof()
feof() takes file-pointer as input, returns nonzero if all
data read and zero otherwise
if(feof(fp))
printf(“End of datan”);
ferror() takes file-pointer as input, returns nonzero
integer if error detected else returns zero
if(ferror(fp) !=0)
printf(“An error has occurredn”);
Busy Bee Workshop – FileBusy Bee Workshop – File
21. Error while opening file
if file cannot be opened then fopen returns a NULL
pointer
Good practice to check if pointer is NULL before
proceeding
fp = fopen(“input.dat”, “r”);
if (fp == NULL)
printf(“File could not be opened n ”);
Busy Bee Workshop – FileBusy Bee Workshop – File
22. Random access to files
how to jump to a given position (byte number) in a file
without reading all the previous data?
fseek (file-pointer, offset, position);
position: 0 (beginning), 1 (current), 2 (end)
offset: number of locations to move from position
Example: fseek(fp,-m, 1); /* move back by m bytes from
current
position */
fseek(fp,m,0); /* move to (m+1)th byte in file */
fseek(fp, -10, 2); /* what is this? */
ftell(fp) returns current byte position in file
rewind(fp) resets position to start of file
Busy Bee Workshop – FileBusy Bee Workshop – File
23. Command line arguments
can give input to C program from command line
E.g. > prog.c 10 name1 name2
….
how to use these arguments?
main ( int argc, char *argv[] )
argc – gives a count of number of arguments (including
program name)
char *argv[] defines an array of pointers to character (or
array of strings)
argv[0] – program name
argv[1] to argv[argc -1] give the other arguments as strings
Busy Bee Workshop – FileBusy Bee Workshop – File