Write a program using the following question Text file grade

Write a program using the following question:

Text file “grade.txt” contains 10 students grade. Each line with one grade.

Read all grades from the file “grade.txt” and write them as integers into a binary file (binaryGrade.dat).

Read grades from the binary file “binaryGrade.dat” and compute and display the average grade.

Using standard java code complete and write the program for this question.

Solution

grade.txt (We have to save this file in D Drive.Then the Path of the file pointing to it is D://grade.txt)

56
78
98
87
76
66
77
88
92
84

_____________________

binaryGrade.dat (We can find this fiule under the D Drive.As we specified the path of file as D://binaryGrade.dat)

111000
1001110
1100010
1010111
1001100
1000010
1001101
1011000
1011100
1010100

_____________________

ReadFile.java

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;

public class ReadFile {

   public static void main(String[] args) throws IOException {

       //Calling the methods
       readDecimal();

       readBinary();
   }
   /* This method will read the decimal numbers from the file and
   * convert each number to decimal format and write it into another file
   */
   private static void readDecimal() throws IOException {
       // Create FileWriter Reference
       FileWriter fileWriter = null;

       // Creating the Scanner class reference.
       Scanner scanner = null;

       BufferedWriter bw = null;

       try {
           // Creating Scanner object by passing the file Object as input
           scanner = new Scanner(new File(\"D:\\\\grade.txt\"));

           // Creating an output file
           File output = new File(\"D:\\\\binaryGrade.dat\");

           fileWriter = new FileWriter(output);

           bw = new BufferedWriter(fileWriter);

           // This while loop will write the data(Binary Numbers) to the file
           while (scanner.hasNext()) {
               /*
               * Getting the each decimal number from the file and converting
               * it into binary form and writing into another file
               */
               bw.write(Integer.toBinaryString(scanner.nextInt()));
               bw.write(\"\ \ \");
           }
       } catch (FileNotFoundException e) {
           e.printStackTrace();
       }

       bw.close();

   }

   /* This method will read the binary numbers from the file,
   * convert to decimal number and find average and display
   */
   private static void readBinary() {
       double sum = 0.0, average = 0.0;
       int count = 0;
       try {
           Scanner scanner = new Scanner(new File(\"D:\\\\binaryGrade.dat\"));
           while (scanner.hasNext()) {
              
               //Calculating the sum of all decimal numbers
               sum += Integer.parseInt(scanner.next(), 2);
              
               //Counting how many numbers are there
               count++;
           }
       } catch (FileNotFoundException e) {

           e.printStackTrace();
       }

       //calculating the average
       average = sum / count;
      
       //Displaying the average
       System.out.println(\"Average :\" + average);
   }
}

____________________

Output:

Average :80.2

_____Thank You

Write a program using the following question: Text file “grade.txt” contains 10 students grade. Each line with one grade. Read all grades from the file “grade.t
Write a program using the following question: Text file “grade.txt” contains 10 students grade. Each line with one grade. Read all grades from the file “grade.t
Write a program using the following question: Text file “grade.txt” contains 10 students grade. Each line with one grade. Read all grades from the file “grade.t

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site