Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.

Slides:



Advertisements
Similar presentations
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Advertisements

File Handling Advanced Higher Programming. What is a file? Up until now, any stored data within a program is lost when the program closes. A file is a.
Files Organisation sequential files. Readings u Schneider Chapter 8 u Shelly Cashman to 9.14; to 9.11 u Meyer to 2-37; 1995.
Alford Academy Business Education and Computing1 Advanced Higher Computing Based on Heriot-Watt University Scholar Materials File Handling.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Java: Early Objects Third Edition by Tony Gaddis Chapter.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 18 Indexing Structures for Files.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design First Edition by Tony Gaddis.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Sixth Edition Chapter 5: Looping by Tony.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Chapter 5: Loops and Files.
An Introduction to Programming with C++ Fifth Edition Chapter 13 Sequential Access Files.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Sixth Edition by Tony Gaddis, Judy Walters,
Chapter 2: Input, Processing, and Output
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5 Part 1 Conditionals and Loops.
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Extended Prelude to Programming Concepts & Design, 3/e by Stewart Venit and.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
© Copyright 2012 by Pearson Education, Inc. All Rights Reserved. Chapter 13 Files and Exception Handling 1.
Topics Introduction Hardware and Software How Computers Store Data
General Computer Science for Engineers CISC 106 Lecture 02 Dr. John Cavazos Computer and Information Sciences 09/03/2010.
Chapter 1: Introduction to Computers and Programming.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers and Programming.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Seventh Edition by Tony Gaddis, Judy.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley C H A P T E R 2 Input, Processing, and Output.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley C H A P T E R 1 Introduction to Computers and Programming.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Extended Prelude to Programming Concepts & Design, 3/e by Stewart Venit and Elizabeth Drake Chapter 6: Sequential Data Files.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley STARTING OUT WITH Python Python First Edition by Tony Gaddis Chapter 3 Simple.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
C++ for Engineers and Scientists Second Edition Chapter 8 I/O File Streams and Data Files.
Chapter 9 I/O Streams and Data Files
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Extended Prelude to Programming Concepts & Design, 3/e by Stewart Venit and.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley STARTING OUT WITH Python Python First Edition by Tony Gaddis Chapter 7 Files.
An Introduction to Programming with C++ Sixth Edition Chapter 14 Sequential Access Files.
Visual Basic 2010 How to Program © by Pearson Education, Inc. All Rights Reserved.
5 1 Data Files CGI/Perl Programming By Diane Zak.
Liang, Introduction to Programming with C++, Second Edition, (c) 2010 Pearson Education, Inc. All rights reserved Chapter 13 File Input and.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Copyright © 2012 Pearson Education, Inc. Chapter 5 Loops, File, and Random Numbers.
Using Text Files in Excel File I/O Methods. Working With Text Files A file can be accessed in any of three ways: –Sequential access: By far the most common.
Pascal Programming Today Chapter 11 1 Chapter 11.
Files Tutor: You will need ….
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley STARTING OUT WITH Python Python First Edition by Tony Gaddis Chapter 5 Repetition.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5: Looping.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Copyright © 2013 Pearson Education, Inc. Publishing as Pearson Addison-Wesley What did we learn so far? 1.Computer hardware and software 2.Computer experience.
FILES. open() The open() function takes a filename and path as input and returns a file object. file object = open(file_name [, access_mode][, buffering])
Files in Python The Basics. Why use Files? Very small amounts of data – just hardcode them into the program A few pieces of data – ask the user to input.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Alice: A Visual Introduction to Programming Third Edition.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Copyright © 2013 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Third Edition by Tony Gaddis.
Copyright © 2014, 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Eighth Edition by Tony Gaddis,
FILES AND EXCEPTIONS Topics Introduction to File Input and Output Using Loops to Process Files Processing Records Exceptions.
Copyright © 2013 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Third Edition by Tony Gaddis.
Chapter 14: Sequential Access Files
Topic: File Input/Output (I/O)
Chapter 6: Sequential Data Files
Topics Introduction Hardware and Software How Computers Store Data
Starting Out with Programming Logic & Design
Topics Introduction to File Input and Output
Chapter 7 Files and Exceptions
Reading and Writing Files
Topics Introduction Hardware and Software How Computers Store Data
CS 1111 Introduction to Programming Fall 2018
Topics Introduction to File Input and Output
Topics Introduction to File Input and Output
CS 1111 Introduction to Programming Spring 2019
Presentation transcript:

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis Chapter 10: Files

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-2 Chapter Topics 10.1 Introduction to File Input and Output 10.2 Using Loops to Process Files 10.3 Using Files and Arrays 10.4 Processing Records 10.5 Control Break Logic

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Introduction to File Input and Output When a program needs to save data for later use, it writes the data in a file and can be used later –In previous programs you wrote, the data was stored in variables –File input and output can interact with various types of applications Word processors Image editors Spreadsheets Games Web browsers

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Introduction to File Input and Output Three steps must take place for file interaction 1.Open the file. An output file means creating and prepare it for output; an input file means opening a file and prepare it for reading data from 2.Process the file. Writes data to the file or reads data from the file 3.Close the file. Must be done to disconnect it from the program

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Introduction to File Input and Output Types of files include text and binary –A text file contains data that has been encoded as text, using ASCII or Unicode Even numbers in this type of file are stored as text –A binary file contains data that has not been converted to text A text editor is needed to view the contents of a binary file

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Introduction to File Input and Output Files can be accessed in two methods –Sequential access Data is accessed from the beginning to the end All data must be read –Direct access (aka random access) Any piece of data can be accessed without reading the data that comes before or after it –This chapter will focus on sequential access files

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Introduction to File Input and Output Create a file and writing data to it 1.Files that are created should be given a name with an appropriate file extension customers.dat where.dat represents general data 2.Must also create an internal name that is similar to a variable name Declare OutputFile customerFile –OutputFile indicates the mode in which the file will be used –customerFile is the internal name used to work with the file

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Introduction to File Input and Output 3. Files must be opened Open customerFile “customers.dat” 4. Data can then be written to a file Write customerFile = “Charles Pace” or Declare String name = “Charles Pace” Write customerFile name 5. Closing a file Close customerFile

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Introduction to File Input and Output Delimiters and EOF Marker –A delimiter is a predefined character or set of characters that marks the end of each piece of data It separates the different items stored in a file –An End of File (EOF) marker is a special character or set of characters written to the end of a file It indicates the file’s contents end

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Introduction to File Input and Output Reading data from a file 1. An internal variable must first be declared Declare InputFile inventoryFile –InputFile indicates the mode in which the file will be used –inventoryFile is the internal name used to work with the file 2.The file can then be opened –Open inventoryFile “inventory.dat” 3.Data can then be read –Read inventoryFile itemName 4.And finally closed –Close inventoryFile

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Introduction to File Input and Output The append mode –In addition to read and write mode, append mode also exists to add data to a file that also exists –If the file already exists, it will not be erased –If the file does not exist, it will be created –When data is written to the file, it will be written to the end of the file Declare OutputFile AppendMode myFile

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Using Loops to Process Files Loops can be used to enter large amounts of data For counter =1 To numDays Display “Enter the sales for day #”, counter Input sales Write salesFile sales //writes to the file End For Loops could also be used to read large amounts of data While NOT eof(salesFile) Read salesFile sales Display currencyFormat(sales) End While

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Using Files and Arrays Files and arrays can be used together –The contents of an array can be saved to a file 1.Open the file 2.Use a loop to step through each element of the array 3.Write the contents to a file on each iteration –The contents of a file can be read into an array 1.Open the file 2.Use a loop to read each item from the file 3.Store each item in an array element

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Processing Records Data that is stored in a file is frequently organized in records –A record is a complete set of data about an item –A field is a single piece of data within a record Figure Fields in a record

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Processing Records Writing Records –An entire record is done using a single Write statement Write employeeFile name, idNumber, department Reading Records –Done in a similar fashion Read employeeFile name, idNumber, department Algorithms can also be used for adding records to a file, searching for a specific record(s), modifying a record, and/or deleting a record

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Control Break Logic Control break logic interrupts a program’s regular processing to perform a different action when a control variable’s value changes or the variable acquires a specific value –One example is the use of a line counter to pause the program before the information being displayed goes out of view –This can be done with an if statement

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-17 Exercise1 – Create a data file If lines==24 Then Display “Press any key to continue…” Input Set lines = 0 // resets the counter End If

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Control Break Logic If lines==24 Then Display “Press any key to continue…” Input Set lines = 0 // resets the counter End If Figure Pausing output after 24 items are displayed

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Exercise #Program 10 ‐ 1 (file_write_demo.py) # This program writes three lines of data # to a file. def main(): # Open a file named philosophers.txt. outfile = open('philosophers.txt', 'w') #Write the names of three philosphers # to the file. outfile.write('John Locke\n') outfile.write('David Hume\n') outfile.write('Edmund Burke\n') # Close the file. outfile.close() # Call the main function. main() See Python_Language_Companion.pdf page 84Python_Language_Companion.pdf file_variable = open(filename, mode) Note: the ‘w’ opens the file (philosophers.txt) for writing. If the file already exists, the contents are erased. If it does not exist, it creates it. 1. Paste the code for Program 10-1 to a new Python window 2. Save the file 3. Run the code 4. Find the ‘philosophers.txt’ file in the directory where you saved this code

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Exercise #Program 10 ‐ 2 (file_read_demo.py) # This program reads the contents of the # philosophers.txt file one line at a time. def main(): # Open a file named philosophers.txt. infile = open('philosophers.txt', 'r') # Read three lines from the file line1 = infile.readline() line2 = infile.readline() line3 = infile.readline() # Close the file. infile.close() # Call the main function. main() 1. Paste the code for Program 10-2 to a new Python window 2. Save the file 3. Run the code

Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Exercise # This program writes 2 lines of data # to a file. def main(): # Open a file named ______.txt. outfile = open(‘________.txt', ‘__') #Write the title of two movies # to the file. # Close the file. # Call the main function. main() Create a program that writes two lines to a file.