Upload
audra-johnston
View
215
Download
0
Embed Size (px)
DESCRIPTION
Microsoft Visual Basic 2005: Reloaded, Second Edition3 Objectives (continued) Read information from a sequential access file Determine whether a file exists Code the FormClosing event Prevent a form from closing
Citation preview
Microsoft Visual Basic 2005: Reloaded
Second Edition
Chapter 9Structures and Sequential Access Files
Microsoft Visual Basic 2005: Reloaded, Second Edition 2
Objectives
After studying this chapter, you should be able to:• Create a structure• Declare and manipulate a structure variable• Create an array of structure variables• Write information to a sequential access file• Align the text written to a sequential access file
Microsoft Visual Basic 2005: Reloaded, Second Edition 3
Objectives (continued)
• Read information from a sequential access file• Determine whether a file exists• Code the FormClosing event• Prevent a form from closing
Microsoft Visual Basic 2005: Reloaded, Second Edition 4
Structures
• Structure statement: creates your own data type• User-defined data type (or structure): data types
created by using the Structure statement• Member variables: variables defined within a
structure• Structure can include member variables of:
– Any of the standard data types– Other structure types
Microsoft Visual Basic 2005: Reloaded, Second Edition 5
Structures (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 6
Using a Structure to Declare a Variable
• Structure variables: variables declared using a structure
• Refer to an entire structure in code using its name• Refer to a member variable using the structure
name with the dot operator and the member variable name
• Member variables can be used like any other variables
• Structures are used to group related items into one unit
Microsoft Visual Basic 2005: Reloaded, Second Edition 7
Using a Structure to Declare a Variable (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 8
Using a Structure to Declare a Variable (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 9
Passing a Structure Variable to a Procedure
Microsoft Visual Basic 2005: Reloaded, Second Edition 10
Passing a Structure Variable to a Procedure (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 11
Passing a Structure Variable to a Procedure (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 12
Passing a Structure Variable to a Procedure (continued)
• Sample application using a structure:– Less code to pass a structure variable to a
procedure– Stores all of the data in a single unit
Microsoft Visual Basic 2005: Reloaded, Second Edition 13
Passing a Structure Variable to a Procedure (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 14
Passing a Structure Variable to a Procedure (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 15
Creating an Array of Structure Variables
• Use a one-dimensional array of structure variables instead of two-dimensional or parallel one-dimensional arrays
• Refer to a member variable in an array element by:arrayname(subscript).memberVariableName
Microsoft Visual Basic 2005: Reloaded, Second Edition 16
Creating an Array of Structure Variables (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 17
Creating an Array of Structure Variables (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 18
Creating an Array of Structure Variables (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 19
Creating an Array of Structure Variables (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 20
Creating an Array of Structure Variables (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 21
File Types
• Reading a file: getting information from a file• Writing to a file: sending information to a file• Output files: files to which information is written• Input files: files that are read by the computer• Three types of files in Visual Basic:
– Sequential – Random– Binary
Microsoft Visual Basic 2005: Reloaded, Second Edition 22
File Types (continued)
• Sequential file: data is accessed sequentially, in consecutive order from the beginning to the end
• Random file: data can be accessed in consecutive or random order
• Binary file: data is accessed by its byte location in the file
Microsoft Visual Basic 2005: Reloaded, Second Edition 23
Sequential Access Files
• Sequential access file: often called a text file because it is composed of lines of text
• Data must be read sequentially from beginning to end
Microsoft Visual Basic 2005: Reloaded, Second Edition 24
Sequential Access Files (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 25
Writing Information to a Sequential Access File
• WriteAllText method: – Writes information to a sequential access file– File argument: contains the name of the file to be
used– Text argument: contains the data to be written– Append argument: if True, data is added to end of
existing file; otherwise all existing data is erased
Microsoft Visual Basic 2005: Reloaded, Second Edition 26
Writing Information to a Sequential Access File (continued)
• My feature: exposes a set of commonly used objects to the programmer
• My.Computer object: allows access to objects and methods to manipulate files
• Computer uses a file pointer to trace where the next character will be read from or written to a file
• Strings.Space method: writes a specific number of spaces to a file
Microsoft Visual Basic 2005: Reloaded, Second Edition 27
Writing Information to a Sequential Access File (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 28
Aligning Columns of Information in a Sequential Access File
• PadLeft, PadRight methods: – Pads a string with a specified number of characters
based on current length of the string being padded– Aligns columns of information written to a sequential
access file• Aligns columns of numeric information by the decimal
point
Microsoft Visual Basic 2005: Reloaded, Second Edition 29
Aligning Columns of Information in a Sequential Access File (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 30
Aligning Columns of Information in a Sequential Access File (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 31
Reading Information from a Sequential Access File
• ReadAllText method: reads information stored in a sequential access file– File argument: contains the name of the sequential
access file
Microsoft Visual Basic 2005: Reloaded, Second Edition 32
Reading Information from a Sequential Access File (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 33
Determining Whether a File Exists
• An attempt to read a file that does not exist will cause an error
• FileExists method: determines if the file exists before attempting to read it– File argument: contains the name of the file
Microsoft Visual Basic 2005: Reloaded, Second Edition 34
Determining Whether a File Exists (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 35
The FormClosing Event
• FormClosing event: – Occurs when a form is about to be closed by the
program code or by the user– Allows you to trap the closing action and take any
necessary actions such as saving data– Can be used to cancel the close action– Set e.Cancel = True to cancel the closing action
Microsoft Visual Basic 2005: Reloaded, Second Edition 36
The FormClosing Event (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 37
The Friends Application
Microsoft Visual Basic 2005: Reloaded, Second Edition 38
The Friends Application (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 39
The Friends Application (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 40
The Friends Application (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 41
The Friends Application (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition 42
Programming Tutorial
Microsoft Visual Basic 2005: Reloaded, Second Edition 43
Programming Example
Microsoft Visual Basic 2005: Reloaded, Second Edition 44
Summary
• Structure statement: defines a user-defined data type or structure
• Structure variable contains one or more member variables
• Structure variable can be passed to procedures• Create a one-dimensional array of structure
variables– Use the dot member access operator to access the
structure member variables
Microsoft Visual Basic 2005: Reloaded, Second Edition 45
Summary (continued)
• Application can read from and write to a file• Sequential access files are always accessed in
consecutive (sequential) order from beginning to end
• ReadAllText method: reads text from a sequential access file
• WriteAllText method: writes text to a sequential access file
• Use Strings.Space, PadLeft, and PadRight methods to align data in a sequential access file
Microsoft Visual Basic 2005: Reloaded, Second Edition 46
Summary (continued)
• FileExists method: determines if a file exists before trying to read from it
• FormClosing event: occurs when the form is about to be closed
• Use the FormClosing event to save data or to prevent a form from being closed