Class 15 honors
This presentation is the property of its rightful owner.
Sponsored Links
1 / 35

Class 15 Honors PowerPoint PPT Presentation


  • 106 Views
  • Uploaded on
  • Presentation posted in: General

Class 15 Honors. Objectives. Understand some common file I/O functions Set up a program for writing to a file Read information from a file. 3 Steps to Use a File. The file must be opened. If the file does not exist, opening it means creating it.

Download Presentation

Class 15 Honors

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Class 15 honors

Class 15 Honors


Objectives

Objectives

  • Understand some common file I/O functions

  • Set up a program for writing to a file

  • Read information from a file


3 steps to use a file

3 Steps to Use a File

  • The file must be opened. If the file does not exist, opening it means creating it.

  • Information is then saved to the file, read from the file, or both.

  • When the program is finished using the file, the file must be closed.

P. 701


File name and

P. 706

Table 12-4

File Name and

ExtensionFile Contents

MYPROG.BASBASIC Program

MENU.BATDOS Batch File

INSTALL.DOCDocumentation File

CRUNCH.EXEExecutable File

GAMES.GRPWindows Group File

BOB.HTMLHTML

3DMODEL. JAVAjava prog. or applet

INVENT.OBJObject File

PROG1.PRJBorland C++ Porj. File

ANSI.SYSSys. Device Driver

README.TXTText File

CLIENTS.DAT


Writing information to a file

Writing Information to a File

File:

In Memory

Variables:

25

40

10

10

X

Y

25

Z

40

Data is copied from variables

into the file


Reading information from a file

Reading Information from a File

File:

In Memory

Variables:

25

40

10

10

X

Y

25

Z

40

Data is copied from the file

into variables


File stream

P. 700Table 12-1

File Stream

Data Type

ofstream

Description

Output File Stream. This data type can be used to create files and write information to them. With the ofstream data type, information may only be copied from variables to the file, but not vice-versa.


File stream1

P. 700Table 12-1

File Stream

Data Type

ifstream

Description

Input File Stream. This data type can be used to read information from files into memory. With the ifstream data type, information may only be copied from the file into variables, not but vice-versa.


File stream2

File Stream

P. 700Table 12-1

Data Type

fstream

Description

File Stream. This data type can be used to create files, write information to them, and read information from them. With the fstream data type, information may be copied from variables into a file, or from a file into variables.


Class 15 honors

ofstream outClientFile(“clients.dat”, ios::out);

if (!outClientFile) {

cerr<<“File could not be opened”

<< endl;

exit (1);// prototype in stdlib

}


Class 15 honors

ofstream outclientFile(“clients.dat”, ios::out);ofstream outclientFile;outclientFile.open(“clients.dat”, ios::out);


Class 15 honors

Opening Modes for Files

  • ios::app- Write all output to the end of the file

  • ios::ate- Move to the end of the original file when file is opened. Enable data to be written anywhere in the file

Table 12- 2p. 701


Class 15 honors

Opening Modes for Files (Cont’d)

  • ios::in- Open a file for input.

  • ios::out- Open a file for output.

  • ios::trunc- Discard the file’s contents if it exists (this is also the default action for ios::out)

Table 12- 2p. 701


Class 15 honors

Opening Modes for Files (Cont’d)

  • ios::nocreate- If the file does not exist, the open operation fails.

  • ios::noreplace- If the file exists, the open operation fails.

  • ios::binary- Information read or written in pure binary format


Class 15 honors

#include <fstream>

using namespace std;

int main()

{fstream DataFile;

char FileName[81];

cout << “Enter the name of the file you wish to open\n”;

cout << “or create:”;

cin.getline(FileName);

DataFile.open(FileName, ios::out);

cout << “The file ” << FileName <<

”was opened.\n”;

}

P. 702Pgrm. 12-1


Class 15 honors

#include <fstream> using namespace std;

int main()

{fstream DataFile;

char FileName[81];

cout << “Enter the name of the file you wish to open\n”;

cout << “or create:”;

cin.getline(FileName);

DataFile.open(FileName, ios::out);

cout << “The file ” << FileName <<

”was opened.\n”;

}


Class 15 honors

#include <fstream.h>

void main(void)

{fstream DataFile;

DataFile.open(“demofile.txt”, ios::out);

if (DataFile == 0)

{cout << “File open error!” ,, endl;

return;}

cout << “File opened successfully.\n”;

cout << “Now writing information to the file.\n”;

DataFile << “Jones\n”;

DataFile << “Smith\n”;

DataFile <<“Willis\n”;

DataFile << “Davis\n”;

DataFile.close( ); }

P. 702Pgrm. 12-1


Program screen output

Program Screen Output

P. 702

File opened successfully

Now writing information to the file.

Done.

Output to File DEMOFILE.TXT

Jones

Smith

Wilis

Davis


Class 15 honors

S

m

i

t

\n

n

e

h

i

l

o

J

s

\n

W

i

s

D

l

\n

v

s

a

\n

i

<EOF>

P. 702


Class 15 honors

#include <fstream>

int main()

{fstream DataFile;

DataFile.open(“demofile.txt”, ios::out);

DataFile << “Jones\n”;

DataFile << “Smith\n”;

DataFile.close( );

DataFile.open(“demofile.txt”, ios::app);

DataFile << “Willis\n”;

DataFile << “Davis\n”;

DataFile.close( );

}

P. 703Pgrm. 12-2


Class 15 honors

Output to File DEMOFILE.TXT

Jones

Smith

Wilis

Davis

Pg. 703


Class 15 honors

S

m

i

t

\n

n

e

h

i

l

o

J

s

\n

W

i

s

D

l

\n

v

s

a

\n

i

<EOF>

P. 704Fig. 12- 3


This program writes three rows of numbers to a file

//This program writes three rows of//numbers to a file.

P. 709Pgrm. 12-4

#include <fstream>

# include <iomanip>#include <iostream>using namespace std;

int main ()

{fstream OutFile(“table.txt, ios::out);

int Nums[3] [3] = { 2897, 5, 837,

34, 7, 1623,

390, 3456, 12 };


Write three rows of numbers

//Write three rows of numbers

for (int Row = 0; row < 3; Row++)

{

for (int Col = 0; Col < 3; Col++)

{

OutFile << setw(4)<< Nums[Row] [Col]<<“ ”;

}

OutFile << endl;

}

OutFile.close( );

}

P. 709Pgrm. 12-4


Class 15 honors

Contents of File TABLE.TXT

28975837

3471623

390 345612

Pg. 709


Class 15 honors

#include <fstream>#include <iostream> using namespace std;

bool openFileIn(fstream &, char [51]);void showContents(fstream &);

int main()

{fstream dataFile;

if (!openFileIn(dataFile,”demofile.txt);

{ cout << “File open error!<< endl;

return 0; }

P. 710-711Pgrm. 12-5


Class 15 honors

cout << “File opened successfully.\n”;

cout << “Now reading information from the file.\n\n”; showContents(dataFile);

cout << “done” ; return 0; // end of main}bool openFileIn(fstream &file, char *name){ bool status; file.open(name,ios::in);

if (file.fail())

status = false; else status = true;

return status; }

P. 711Pgrm. 12-5


Class 15 honors

void ShowContents(fstream &File)

{char Name [81];

while (!File.eof( )){

File >> Name;

cout << Name << endl;

}

P. 711Pgrm. 12-5


Class 15 honors

r

u

M

p

y

y

n

h

4

7

a

J

e

\n

C

i

r

l

o

n

c

A

J

e

e

s

\n

N

C

2

o

n

7

0

m

l

d

,

8

P. 712

2

\n

<EOF>


Class 15 honors

#include <fstream> #include <iostream>using namespace std;

int main()

{fstream NameFile;

char Input[81];

NameFile.open(“murphy.txt”, ios::in);

if (NameFile == 0)

{

cout << “File open error!” << endl;

return 0;

} nameFile.getline(input,81);while (!NameFile.eof( ))

{ cout << Input; nameFile.getline(input,81);}

NameFile.close( );

}

P. 717Pgrm. 12-8


Exercise

Exercise

  • Write a program that will read all the data in a file and write all the data to a new file removing the blanks.Modify page 730


Class 15 honors

#include <fstream> #include <iostream> int main()

{fstream inFile;

ostream outFile(“out.dat”, ios:: out);

char Ch, FileName [51];

cout << “Enter the name of the file”;

cin >> FileName;

inFile.open(FileName, ios::in);

if (!inFile)

{ cout << FileName << “could not” << “be opened.\n”;

return 0;}

P. 723-724Pgrm. 12-12


Class 15 honors

// prime read inFile.get(ch); while (!inFile.eof( ))

{if(Ch! = ‘ ‘ ) // change from textbook

outFile.put(Ch); inFile.get(Ch);

}

File.close( );

return 0;}

P. 723-724Pgrm. 12-12


Class 15 honors

Q & A


Conclusion of class 15

Conclusion of Class 15


  • Login