SlideShare a Scribd company logo
1 of 24
F i l e M a n a g e m e n t
L 3 4 - L 3 5
Console oriented Input/Output
 Console oriented – use terminal (keyboard/screen)
 scanf( ) – read data from keyboard
 printf( ) – print data to monitor
 Suitable for small volumes of data!!!
 Data lost when program terminated!!!
3/11/2024 Department of CSE 2
Real-life applications
•Large data volumes
• E.g. physical experiments (human genome, population
records etc.)
•Need for flexible approach to store/retrieve data
→ Files
3/11/2024 Department of CSE 3
Files
• File – place on disc where group of related data is stored.
▫ E.g. your C++ programs, executable etc.
• High-level programming languages support various operations on files
▫ Naming
▫ Opening
▫ Reading
▫ Writing
▫ Closing
3/11/2024 Department of CSE 4
Defining and opening file
• To store data file in secondary memory (disc) it must
specify to OS:
▫ Filename (e.g. sort.c, input.data)
▫ Datastructure (e.g. FILE)
▫ Purpose (e.g. reading, writing, appending)
3/11/2024 Department of CSE 5
Filename
• String of characters that make up a valid filename for
OS
• May contain two parts
▫ Primary (name)
▫ Optional period with extension
• Examples: a.txt,
program.c,
temp,
text.out
3/11/2024 Department of CSE 6
FILE- Data structure
• FILE is user defined data type defined in stdio.h
3/11/2024 Department of CSE 7
FILE *fp; //declaration of pointer to FILE structure
Different modes: purpose
• 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.
3/11/2024 Department of CSE 8
FILE *p1, *p2;
p1 = fopen(“data”, “r”);
p2= fopen(“results”, “w”);
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
3/11/2024 Department of CSE 9
FILE *fp; /*variable fp is pointer to type FILE*/
fp = fopen(“filename”, “mode”);
/*opens file with name filename , assigns identifier to fp */
fp is a file pointer of type FILE , this file pointer is just to store
the composite information about a file subject to manipulation.
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
3/11/2024 Department of CSE 10
Closing a file
• File must be closed as soon as all operations on it is
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.
3/11/2024 Department of CSE 11
Closing a file
• pointer can be reused after closing.
3/11/2024 Department of CSE 12
Syntax: fclose(file_pointer);
Example:
FILE *p1, *p2;
p1 = fopen(“INPUT.txt”, “r”);
p2 =fopen(“OUTPUT.txt”, “w”);
……..
……..
fclose(p1);
fclose(p2);
Input/Output operations on files
The different functions for reading/writing are
• 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
3/11/2024 Department of CSE 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 is
reached.
• In Code::Blocks getchar(), getc() returns an integer, putchar()
and putc() takes an integer. Type cast the integer to a char.
3/11/2024 Department of CSE 14
Program to read/write using getc/putc
3/11/2024 Department of CSE 15
#include <stdio.h>
int main()
{ FILE *fp1;
char c;
fp1= fopen("INPUT", "w"); /* open file for writing */
printf("Enter contents of the file: n");
while((c=(char)getchar()) != EOF) /*get char from keyboard until CTRL-Z*/
putc((char)c,fp1); /*write a character to INPUT */
fclose(fp1); /* close INPUT */
fp1=fopen("INPUT", "r"); /* reopen file */
while((c=(char)getc(fp1))!=EOF) /*read character from file INPUT*/
printf("%c", c); /* print character to screen */
fclose(fp1);
return 0;
}
getw() and putw()
• handle one integer at a time
• syntax: putw(i,fp1);
• i : an integer variable
• fp1 : pointer to file opened 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
3/11/2024 Department of CSE 16
Using getw, putw
#include <stdio.h>
int main()
{ int i,sum=0;
FILE *f1;
/* open files */
f1 = fopen("data.bin" ,"w");
/* write integers to files in
binary and text format*/
for(i=1;i<5;i++)
putw(i,f1);
fclose(f1);
3/11/2024 Department of CSE 17
f1 = fopen("data.bin","r");
while((i=getw(f1))!=EOF)
{ sum+=i; //summation
printf(“Integer read: %d”, i);
} /* end while */
printf(“sum: %d”, sum);
fclose(f1);
}
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
3/11/2024 Department of CSE 18
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”);
3/11/2024 Department of CSE 19
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 ”);
3/11/2024 Department of CSE 20
Convert a text file to all UPPERCASE
3/11/2024 Department of CSE 21
int main() {
FILE *in, *out ;
char c ;
in = fopen (“infile.dat”, “r”) ;
out = fopen (“outfile.dat”, “w”) ;
while ((c = getc (in)) != EOF)
putc (toupper (c), out); // you can use any logic
fclose (in) ;
fclose (out) ;
}
Display the converted file using getc() & cout !.
Copy a file to another file
3/11/2024 Department of CSE 22
int main(){
clrscr();
FILE *p,*q;
char file1[20],file2[20];
char ch;
printf("nSource file name:“);
gets(file1);
p=fopen(file1,"r");
if(p==NULL){
printf("cannot open file %s”, file1);
return 0;
}
Copy a file to another file
3/11/2024 Department of CSE 23
printf("nDestination file name:“);
gets(file2);
q=fopen(file2,"w");
if(q==NULL){
printf("cannot open file %s”, file2);
return 0;
}
while((ch=getc(p))!=EOF)
{ putc(ch,q); // cout<<ch; [on screen]
}
printf("nCOMPLETED“);
fclose(p);
fclose(q); }
Summary
• File concept
• Operations on a file
• File Modes
• File manipulation/handling functions
3/11/2024 Department of CSE 24

More Related Content

Similar to Engineering Computers L34-L35-File Handling.pptx

Similar to Engineering Computers L34-L35-File Handling.pptx (20)

File management
File managementFile management
File management
 
File in C language
File in C languageFile in C language
File in C language
 
File operations in c
File operations in cFile operations in c
File operations in c
 
File handling in C
File handling in CFile handling in C
File handling in C
 
PPS PPT 2.pptx
PPS PPT 2.pptxPPS PPT 2.pptx
PPS PPT 2.pptx
 
File management
File managementFile management
File management
 
File handling in 'C'
File handling in 'C'File handling in 'C'
File handling in 'C'
 
File in c
File in cFile in c
File in c
 
file_handling_in_c.ppt
file_handling_in_c.pptfile_handling_in_c.ppt
file_handling_in_c.ppt
 
File management and handling by prabhakar
File management and handling by prabhakarFile management and handling by prabhakar
File management and handling by prabhakar
 
EASY UNDERSTANDING OF FILES IN C LANGUAGE.pdf
EASY UNDERSTANDING OF FILES IN C LANGUAGE.pdfEASY UNDERSTANDING OF FILES IN C LANGUAGE.pdf
EASY UNDERSTANDING OF FILES IN C LANGUAGE.pdf
 
Unit5
Unit5Unit5
Unit5
 
637225560972186380.pdf
637225560972186380.pdf637225560972186380.pdf
637225560972186380.pdf
 
File mangement
File mangementFile mangement
File mangement
 
file_handling_in_c.ppt
file_handling_in_c.pptfile_handling_in_c.ppt
file_handling_in_c.ppt
 
6. chapter v
6. chapter v6. chapter v
6. chapter v
 
C-FILE MANAGEMENT.pptx
C-FILE MANAGEMENT.pptxC-FILE MANAGEMENT.pptx
C-FILE MANAGEMENT.pptx
 
Files in C
Files in CFiles in C
Files in C
 
File Management in C
File Management in CFile Management in C
File Management in C
 
Lecture 20 - File Handling
Lecture 20 - File HandlingLecture 20 - File Handling
Lecture 20 - File Handling
 

More from happycocoman

gas turbine cycles.pptx .
gas turbine cycles.pptx                    .gas turbine cycles.pptx                    .
gas turbine cycles.pptx .happycocoman
 
RECIPROCATING_AIR_COMPRESSOR.ppt .
RECIPROCATING_AIR_COMPRESSOR.ppt         .RECIPROCATING_AIR_COMPRESSOR.ppt         .
RECIPROCATING_AIR_COMPRESSOR.ppt .happycocoman
 
SURFACE TEXTURE 2022.pptx .
SURFACE TEXTURE 2022.pptx                  .SURFACE TEXTURE 2022.pptx                  .
SURFACE TEXTURE 2022.pptx .happycocoman
 
Numericals on Raciprocating air compressor.ppt
Numericals on  Raciprocating air compressor.pptNumericals on  Raciprocating air compressor.ppt
Numericals on Raciprocating air compressor.ppthappycocoman
 
Vapor_power cycles KM.pptx ..
Vapor_power cycles KM.pptx            ..Vapor_power cycles KM.pptx            ..
Vapor_power cycles KM.pptx ..happycocoman
 
Vapor power cycles by Anupama.pptx .
Vapor power cycles by Anupama.pptx     .Vapor power cycles by Anupama.pptx     .
Vapor power cycles by Anupama.pptx .happycocoman
 
Performance and Testing of Internal Combustion Engines.ppt
Performance and Testing of Internal Combustion Engines.pptPerformance and Testing of Internal Combustion Engines.ppt
Performance and Testing of Internal Combustion Engines.ppthappycocoman
 
ICenginesNumericals (1).pptx .
ICenginesNumericals (1).pptx             .ICenginesNumericals (1).pptx             .
ICenginesNumericals (1).pptx .happycocoman
 
Air standard cycles_PPT KM1.pptx .
Air standard cycles_PPT KM1.pptx          .Air standard cycles_PPT KM1.pptx          .
Air standard cycles_PPT KM1.pptx .happycocoman
 
Pressure Measurement ppt.pptx .
Pressure Measurement ppt.pptx               .Pressure Measurement ppt.pptx               .
Pressure Measurement ppt.pptx .happycocoman
 
Measurements & Measurement .Systems.pptx
Measurements & Measurement .Systems.pptxMeasurements & Measurement .Systems.pptx
Measurements & Measurement .Systems.pptxhappycocoman
 
Strain Measurement (NEW).pptx .
Strain Measurement (NEW).pptx               .Strain Measurement (NEW).pptx               .
Strain Measurement (NEW).pptx .happycocoman
 
Force and torque measurements.pptx .
Force and torque measurements.pptx      .Force and torque measurements.pptx      .
Force and torque measurements.pptx .happycocoman
 
Chapter 11 - SCREW THREADS sllides.pdf .
Chapter 11 - SCREW THREADS sllides.pdf       .Chapter 11 - SCREW THREADS sllides.pdf       .
Chapter 11 - SCREW THREADS sllides.pdf .happycocoman
 
Measurement of form errors.pptx .
Measurement of form errors.pptx            .Measurement of form errors.pptx            .
Measurement of form errors.pptx .happycocoman
 
9. Surface Texture - PPT.pdf .
9. Surface Texture - PPT.pdf               .9. Surface Texture - PPT.pdf               .
9. Surface Texture - PPT.pdf .happycocoman
 
10. Screw Threads - PPT.pdf .
10. Screw Threads - PPT.pdf                    .10. Screw Threads - PPT.pdf                    .
10. Screw Threads - PPT.pdf .happycocoman
 
Measurement of Form errors complete slides.pdf
Measurement of Form errors complete slides.pdfMeasurement of Form errors complete slides.pdf
Measurement of Form errors complete slides.pdfhappycocoman
 
Limits Fits and Tolerances ppt.pdf .
Limits Fits and Tolerances ppt.pdf     .Limits Fits and Tolerances ppt.pdf     .
Limits Fits and Tolerances ppt.pdf .happycocoman
 

More from happycocoman (20)

gas turbine cycles.pptx .
gas turbine cycles.pptx                    .gas turbine cycles.pptx                    .
gas turbine cycles.pptx .
 
RECIPROCATING_AIR_COMPRESSOR.ppt .
RECIPROCATING_AIR_COMPRESSOR.ppt         .RECIPROCATING_AIR_COMPRESSOR.ppt         .
RECIPROCATING_AIR_COMPRESSOR.ppt .
 
SURFACE TEXTURE 2022.pptx .
SURFACE TEXTURE 2022.pptx                  .SURFACE TEXTURE 2022.pptx                  .
SURFACE TEXTURE 2022.pptx .
 
Numericals on Raciprocating air compressor.ppt
Numericals on  Raciprocating air compressor.pptNumericals on  Raciprocating air compressor.ppt
Numericals on Raciprocating air compressor.ppt
 
Vapor_power cycles KM.pptx ..
Vapor_power cycles KM.pptx            ..Vapor_power cycles KM.pptx            ..
Vapor_power cycles KM.pptx ..
 
Vapor power cycles by Anupama.pptx .
Vapor power cycles by Anupama.pptx     .Vapor power cycles by Anupama.pptx     .
Vapor power cycles by Anupama.pptx .
 
Performance and Testing of Internal Combustion Engines.ppt
Performance and Testing of Internal Combustion Engines.pptPerformance and Testing of Internal Combustion Engines.ppt
Performance and Testing of Internal Combustion Engines.ppt
 
ICenginesNumericals (1).pptx .
ICenginesNumericals (1).pptx             .ICenginesNumericals (1).pptx             .
ICenginesNumericals (1).pptx .
 
Air standard cycles_PPT KM1.pptx .
Air standard cycles_PPT KM1.pptx          .Air standard cycles_PPT KM1.pptx          .
Air standard cycles_PPT KM1.pptx .
 
Pressure Measurement ppt.pptx .
Pressure Measurement ppt.pptx               .Pressure Measurement ppt.pptx               .
Pressure Measurement ppt.pptx .
 
Measurements & Measurement .Systems.pptx
Measurements & Measurement .Systems.pptxMeasurements & Measurement .Systems.pptx
Measurements & Measurement .Systems.pptx
 
Strain Measurement (NEW).pptx .
Strain Measurement (NEW).pptx               .Strain Measurement (NEW).pptx               .
Strain Measurement (NEW).pptx .
 
Force and torque measurements.pptx .
Force and torque measurements.pptx      .Force and torque measurements.pptx      .
Force and torque measurements.pptx .
 
FLOW(NEW).pptx .
FLOW(NEW).pptx                          .FLOW(NEW).pptx                          .
FLOW(NEW).pptx .
 
Chapter 11 - SCREW THREADS sllides.pdf .
Chapter 11 - SCREW THREADS sllides.pdf       .Chapter 11 - SCREW THREADS sllides.pdf       .
Chapter 11 - SCREW THREADS sllides.pdf .
 
Measurement of form errors.pptx .
Measurement of form errors.pptx            .Measurement of form errors.pptx            .
Measurement of form errors.pptx .
 
9. Surface Texture - PPT.pdf .
9. Surface Texture - PPT.pdf               .9. Surface Texture - PPT.pdf               .
9. Surface Texture - PPT.pdf .
 
10. Screw Threads - PPT.pdf .
10. Screw Threads - PPT.pdf                    .10. Screw Threads - PPT.pdf                    .
10. Screw Threads - PPT.pdf .
 
Measurement of Form errors complete slides.pdf
Measurement of Form errors complete slides.pdfMeasurement of Form errors complete slides.pdf
Measurement of Form errors complete slides.pdf
 
Limits Fits and Tolerances ppt.pdf .
Limits Fits and Tolerances ppt.pdf     .Limits Fits and Tolerances ppt.pdf     .
Limits Fits and Tolerances ppt.pdf .
 

Recently uploaded

Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Dr.Costas Sachpazis
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlysanyuktamishra911
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...Call Girls in Nagpur High Profile
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...RajaP95
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordAsst.prof M.Gokilavani
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Christo Ananth
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college projectTonystark477637
 

Recently uploaded (20)

Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college project
 

Engineering Computers L34-L35-File Handling.pptx

  • 1. F i l e M a n a g e m e n t L 3 4 - L 3 5
  • 2. Console oriented Input/Output  Console oriented – use terminal (keyboard/screen)  scanf( ) – read data from keyboard  printf( ) – print data to monitor  Suitable for small volumes of data!!!  Data lost when program terminated!!! 3/11/2024 Department of CSE 2
  • 3. Real-life applications •Large data volumes • E.g. physical experiments (human genome, population records etc.) •Need for flexible approach to store/retrieve data → Files 3/11/2024 Department of CSE 3
  • 4. Files • File – place on disc where group of related data is stored. ▫ E.g. your C++ programs, executable etc. • High-level programming languages support various operations on files ▫ Naming ▫ Opening ▫ Reading ▫ Writing ▫ Closing 3/11/2024 Department of CSE 4
  • 5. Defining and opening file • To store data file in secondary memory (disc) it must specify to OS: ▫ Filename (e.g. sort.c, input.data) ▫ Datastructure (e.g. FILE) ▫ Purpose (e.g. reading, writing, appending) 3/11/2024 Department of CSE 5
  • 6. Filename • String of characters that make up a valid filename for OS • May contain two parts ▫ Primary (name) ▫ Optional period with extension • Examples: a.txt, program.c, temp, text.out 3/11/2024 Department of CSE 6
  • 7. FILE- Data structure • FILE is user defined data type defined in stdio.h 3/11/2024 Department of CSE 7 FILE *fp; //declaration of pointer to FILE structure
  • 8. Different modes: purpose • 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. 3/11/2024 Department of CSE 8 FILE *p1, *p2; p1 = fopen(“data”, “r”); p2= fopen(“results”, “w”);
  • 9. 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 3/11/2024 Department of CSE 9 FILE *fp; /*variable fp is pointer to type FILE*/ fp = fopen(“filename”, “mode”); /*opens file with name filename , assigns identifier to fp */ fp is a file pointer of type FILE , this file pointer is just to store the composite information about a file subject to manipulation.
  • 10. 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 3/11/2024 Department of CSE 10
  • 11. Closing a file • File must be closed as soon as all operations on it is 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. 3/11/2024 Department of CSE 11
  • 12. Closing a file • pointer can be reused after closing. 3/11/2024 Department of CSE 12 Syntax: fclose(file_pointer); Example: FILE *p1, *p2; p1 = fopen(“INPUT.txt”, “r”); p2 =fopen(“OUTPUT.txt”, “w”); …….. …….. fclose(p1); fclose(p2);
  • 13. Input/Output operations on files The different functions for reading/writing are • 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 3/11/2024 Department of CSE 13
  • 14. 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 is reached. • In Code::Blocks getchar(), getc() returns an integer, putchar() and putc() takes an integer. Type cast the integer to a char. 3/11/2024 Department of CSE 14
  • 15. Program to read/write using getc/putc 3/11/2024 Department of CSE 15 #include <stdio.h> int main() { FILE *fp1; char c; fp1= fopen("INPUT", "w"); /* open file for writing */ printf("Enter contents of the file: n"); while((c=(char)getchar()) != EOF) /*get char from keyboard until CTRL-Z*/ putc((char)c,fp1); /*write a character to INPUT */ fclose(fp1); /* close INPUT */ fp1=fopen("INPUT", "r"); /* reopen file */ while((c=(char)getc(fp1))!=EOF) /*read character from file INPUT*/ printf("%c", c); /* print character to screen */ fclose(fp1); return 0; }
  • 16. getw() and putw() • handle one integer at a time • syntax: putw(i,fp1); • i : an integer variable • fp1 : pointer to file opened 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 3/11/2024 Department of CSE 16
  • 17. Using getw, putw #include <stdio.h> int main() { int i,sum=0; FILE *f1; /* open files */ f1 = fopen("data.bin" ,"w"); /* write integers to files in binary and text format*/ for(i=1;i<5;i++) putw(i,f1); fclose(f1); 3/11/2024 Department of CSE 17 f1 = fopen("data.bin","r"); while((i=getw(f1))!=EOF) { sum+=i; //summation printf(“Integer read: %d”, i); } /* end while */ printf(“sum: %d”, sum); fclose(f1); }
  • 18. 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 3/11/2024 Department of CSE 18
  • 19. 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”); 3/11/2024 Department of CSE 19
  • 20. 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 ”); 3/11/2024 Department of CSE 20
  • 21. Convert a text file to all UPPERCASE 3/11/2024 Department of CSE 21 int main() { FILE *in, *out ; char c ; in = fopen (“infile.dat”, “r”) ; out = fopen (“outfile.dat”, “w”) ; while ((c = getc (in)) != EOF) putc (toupper (c), out); // you can use any logic fclose (in) ; fclose (out) ; } Display the converted file using getc() & cout !.
  • 22. Copy a file to another file 3/11/2024 Department of CSE 22 int main(){ clrscr(); FILE *p,*q; char file1[20],file2[20]; char ch; printf("nSource file name:“); gets(file1); p=fopen(file1,"r"); if(p==NULL){ printf("cannot open file %s”, file1); return 0; }
  • 23. Copy a file to another file 3/11/2024 Department of CSE 23 printf("nDestination file name:“); gets(file2); q=fopen(file2,"w"); if(q==NULL){ printf("cannot open file %s”, file2); return 0; } while((ch=getc(p))!=EOF) { putc(ch,q); // cout<<ch; [on screen] } printf("nCOMPLETED“); fclose(p); fclose(q); }
  • 24. Summary • File concept • Operations on a file • File Modes • File manipulation/handling functions 3/11/2024 Department of CSE 24