Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

For this lab, you are going to create two programs. The first program (named AsciiToBinary) will read data from an ASCII file and save the

For this lab, you are going to create two programs. The first program (named AsciiToBinary) will read data from an ASCII file and save the data to a new file in a binary format. The second program (named BinaryToAscii) will read data from a binary file and save the data to a new file in ASCII format. Background Preparation:

  1. Review file I/O for ASCII and binary formats, including the fread(), fwrite() and fprintf() functions.
  2. Review your notes on Command Line Parameters and/or find information online at a site such as https://www.tutorialspoint.com/cprogramming/c_command_line_arguments.htm

Specifications: Both programs will obtain the filenames to be read and written from command line parameters. For example:

bash$ AsciiToBinary ascii_in binary_out bash$ BinaryToAscii binary_in ascii_out

The data contained in the ASCII file (both reading from and writing to) will be 10 floating point numbers, 10 lines of text, and 10 signed integers. There will be only one data item per line, and each line of text will contain no more than 40 characters (including ' ' and the NULL terminator). The data contained in the binary file (both reading from and writing to) will be 10 floating point numbers (of type double), 400 characters, 10 signed integers. You may find it helpful to think of the 400 characters as 10 lines of 40 characters each. When writing the floating point values to the ASCII output file, write them to four decimal places.

Sample ASCII and binary format files are provided. The data in the two files correspond to each other. There will be no blank lines found in either file. The specific method that you use to read and write the data is up to you. You may wish to read all the data from the input file before writing to the output file, or you may wish to write each data element as it is read. Be sure to close both files (input and output) before exiting the program. Compiling: Your programs should both compile using a single Makefile (i.e. the make command will compile both programs). Therefore, your Makefile will have at least four targets - all (which will be the uppermost target in the file), AsciiToBinary, BinaryToAscii, and clean (the last target in the file). The executable names do not need to conform to the standard naming conventions used for CS262. However, all directories and source files do need to adhere to these standards. Testing: Besides testing your code with your usual methods, you should also test your programs by reading an ASCII file, converting it to binary, then reading the binary file and converting it to ASCII. The new ASCII file should match exactly with the original ASCII file.

acsii_file.txt

https://www.dropbox.com/s/bwy86vpyozgq9xn/ascii_file.txt?dl=0

binary_file.bin

https://www.dropbox.com/s/5cujl5vob4ns1wf/binary_file.bin?dl=0

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Essentials of Database Management

Authors: Jeffrey A. Hoffer, Heikki Topi, Ramesh Venkataraman

1st edition

ISBN: 133405680, 9780133547702 , 978-0133405682

More Books

Students also viewed these Databases questions