160 likes | 176 Views
Chapter 8. Sequential Files. Outline and Objective. Creating Sequential Files Adding items to Sequential Files Using Sequential Files Sorting Sequential Files Merging Sequential Files Control Break Processing. What is a File?. A collection of related data kept in secondary storage
E N D
Chapter 8 Sequential Files Chapter 8 - Visual Basic Schneider
Outline and Objective • Creating Sequential Files • Adding items to Sequential Files • Using Sequential Files • Sorting Sequential Files • Merging Sequential Files • Control Break Processing Chapter 8 - Visual Basic Schneider
What is a File? • A collection of related data kept in secondary storage • Two types of files: program files, text(data) files • Data files are usually made up of a collection of records. • Holds Data about a single individual • A record is collection of fields. • Individual item Chapter 8 - Visual Basic Schneider
Creating a Sequential File • Choose a file name • Choose a reference number • Open the file for Output • Write to the file • Close the file Chapter 8 - Visual Basic Schneider
Example: Private Sub cmdCreateFile_Click() Dim name1 As String, name2 As String ' Demonstrate use of Write # statement Open "PIONEER.TXT" For Output As #1 Write #1, "ENIAC" Write #1, 1946 Write #1, "ENIAC", 1946 name1 = "Eckert" name2 = "Mauchly" Write #1, 14 * 139, "J.P. " & name1, name2, "John" Close #1 End Sub Reference number File name Write to the file Close the file Chapter 8 - Visual Basic Schneider
Adding Items to a Sequential File • Choose a reference number for the file • Open the file for Append • Write to the end of the file • Close the file Chapter 8 - Visual Basic Schneider
Example (Adding a player to a BASEBALL1.TXT file) Private Sub Form_Load() Open App.Path & "\BASEBALl.TXT" For Append As #1 End Sub Private Sub cmdAddRec_Click() Write #1, txtPlayer.Text, txtTimes.Text, txtHits.Text txtPlayer.Text = ““ txtTimes.Text =“” txtHits.Text=“” txtPlayer.SetFocus End Sub Private Sub cmdQuit_Click() Close #1 End End Sub Opening the file in append mode Chapter 8 - Visual Basic Schneider
Sequential File • Different modes in which a file can be used: • Output • Input • Append • A file should not be open in two different modes at the same time. Chapter 8 - Visual Basic Schneider
Deleting or Changing a Record! • Create a new file • Read and change records • Create a new one • Erase the old one • Kill “FileSpec” • Rename the new file • Name “oldfilespec” As “newfilespec” Chapter 8 - Visual Basic Schneider
Error Trapping • Visual Basic has a device, called error-trapping, for preventing some types of errors. • If an error occurs while error-trapping is active, two things happen: 1. An identifying number is assigned to the Number property of an object called Err 2. The program jumps to error-handling routine. Chapter 8 - Visual Basic Schneider
Error Numbers Chapter 8 - Visual Basic Schneider
Setting up error-trapping in a procedure: • Make the first line of the procedure: On Error GoTo ErrorHandler • Type the statements to carry out the procedure • End the procedure by typing Exit Sub ErrorHandler: error-handling routine Resume Chapter 8 - Visual Basic Schneider
Example( error-handling routine to handle a “division by zero” error) Private Sub cmdDivide_Click() On Error GoTo ErrorHandler Dim a As Single, b As Single, c As Single picResult.Cls a = Val(InputBox("Enter the numerator.")) b = Val(InputBox("Enter the denominator.")) c = a / b picResult.Print ”The result is = “; c Exit Sub Chapter 8 - Visual Basic Schneider
The error-handling routine ErrorHandler : ‘ Division by zero is error code 11 If Err = 11 Then picResult.Print "You tried to divide by 0, which is illegal" picResult.Print "Try again.” b=Val(InputBox(“Enter the denominator”)) End If Resume End Sub Line Label Chapter 8 - Visual Basic Schneider
Sorting Sequential Files • The records of a sequential file can be sorted on any field by first reading the data into parallel arrays and then sorting on a specific field, and then rewriting the data into a file. Chapter 8 - Visual Basic Schneider
Merging Sequential Files • Steps to merge two sorted files: 1. Open the two sorted files For Input and a third file For Output 2. Get the two items of data from each file 3. Compare and repeat until the EOF. If one item precedes the other, write it into the third file and get another item from the file If the two items are identical, write it into the third file and advance to the next items in both files. 4. Write the remaining items to the third file 5. Close the three files. Chapter 8 - Visual Basic Schneider