COMP 122 Lab 7 Lab Report and Source Code COMP 122 Lab 7 Lab Report and Source Code | Page 4

7. For decryption, the main program should create an ifstream for the file to be decrypted. It should use the getline method of the ifstream to read lines from the file, call the encryption / decryption function with the line to be decrypted, and display the string which contains the result of the encryption / decryption function call. Repeat until the ifstream reaches the end of the file, then close the ifstream. 8. For encryption, the main program should create an ifstream for the file to be encrypted. It should also create an ofstream for the file where the encrypted result will be stored. The file name for this file can be gotten from the user or can be the input file name with a special extension added at the end. The getline method of the ifstream is used to read lines from the input file. Then the encryption / decryption function is called to encrypt the line. Display the string containing the result and write the string to the ofstream. Close the ifstream and ofstreams when finished. 9. Make sure that your program allows the user to encrypt / decrypt more than one file per session. This means adding a loop which allows the entire program to repeat until the user has nothing more to do. Hints 1. Use C strings for the encryption string and the file names. Use char arrays for the encryption and decryption maps. You cannot treat these as C strings because the maps can contain 0 as a valid data item rather than the end of string marker. 2. Use a string type variable to hold the encrypted and decrypted strings. The string type allows you to add characters to the end of a string using thepush_back method, and it allows you to dump the contents of the string using the erase method. 3. For input streams, you can use the eof method to determine when you have reached the end of a file. 4. Use a character array to read data from the files. Set the maximum length for this buffer to be 256 characters. Development Strategy I would recommend that you build this project in two phases. The first phase should concentrate on getting the encryption and decryption map functions and the encryption / decryption function working. You can test this by using fixed C strings for the input line and the encryption string. Call the map functions, then encrypt the fixed input string, output the result, then decrypt the encrypted string and output the result. When your final output is the same as