Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

I would like to see a sample of this code being used in a program. import java.i

ID: 3818690 • Letter: I

Question

I would like to see a sample of this code being used in a program.

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


public class favorites
{
   static File FILENAME = new File("listofFavorites.txt");

public static void main(String[] args) throws IOException
{
     
   while(true)
   {
   System.out.println("Please provide number to perform operation");
   System.out.println("1:Print list of favorites");
   System.out.println("2:Add into list of favorites");
      System.out.println("3:Delete from the list");
   System.out.println("4:Exit");
   Scanner sc=new Scanner(System.in);
   int input=sc.nextInt();
   if(input==1)
   {
       readlist();
   }
   else if(input==2)
   {
       System.out.println("Enter Item");
       Scanner sc1=new Scanner(System.in);
   String item=sc1.next();
   addintolist(" "+item);
   }
   else if(input==3)
   {
       // File inputFile = new File("myFile.txt");
       File tempFile = new File("myTempFile.txt");

       BufferedReader reader = new BufferedReader(new FileReader(FILENAME));
       BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile));
           String lineToRemove = "";
       try (BufferedReader br = new BufferedReader(new FileReader(FILENAME))) {

           String sCurrentLine;
  
   //       while ((sCurrentLine = br.readLine()) != null) {
       //       System.out.println(sCurrentLine);
           String currentLine;
       while((currentLine = reader.readLine()) != null) {
           System.out.println(currentLine);
       String trimmedLine = currentLine.trim();
       if(trimmedLine.equals(lineToRemove)) continue;
       writer.write(currentLine + System.getProperty("line.separator"));
           System.out.println("want to remove (y/n)");
               Scanner sc2=new Scanner(System.in);
       String flag=sc2.next();
       if(flag.equalsIgnoreCase("y"))
           lineToRemove = currentLine;
      
           }

       } catch (IOException e) {
           e.printStackTrace();
       }
       writer.close();
       reader.close();
       boolean successful = tempFile.renameTo(FILENAME);
         
  

   }
   else if(input==4)
   {
       System.out.println("exiting from program");
       return;
   }
   else
   {
       System.out.println("invalid entry");
     
   }
   }
}
public static void readlist()
{
   try (BufferedReader br = new BufferedReader(new FileReader(FILENAME))) {

           String sCurrentLine;

           while ((sCurrentLine = br.readLine()) != null) {
               System.out.println(sCurrentLine);
           }

       } catch (IOException e) {
           e.printStackTrace();
       }
}

public static void addintolist(String item)
{
   try(FileWriter fw = new FileWriter(FILENAME, true);
           BufferedWriter bw = new BufferedWriter(fw);
           PrintWriter out = new PrintWriter(bw))
           {
          out.println(item);
           //more code
           //out.println("more text");
           //more code
           } catch (IOException e) {
           //exception handling left as an exercise for the reader
           }
}
}

Explanation / Answer

CREATE A FILE WITH NAME "listofFavorites.txt" AND RUN THE FOLLOWING CODE

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

public class Favorites {
   static File FILENAME = new File("listofFavorites.txt");

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

       while (true) {
           System.out.println("Please provide number to perform operation");
           System.out.println("1:Print list of favorites");
           System.out.println("2:Add into list of favorites");
           System.out.println("3:Delete from the list");
           System.out.println("4:Exit");
           Scanner sc = new Scanner(System.in);
           int input = sc.nextInt();
           if (input == 1) {
               readlist();
           } else if (input == 2) {
               System.out.println("Enter Item");
               Scanner sc1 = new Scanner(System.in);
               String item = sc1.next();
               addintolist(" " + item);
           } else if (input == 3) {
               // File inputFile = new File("myFile.txt");
               File tempFile = new File("myTempFile.txt");
               BufferedReader reader = new BufferedReader(new FileReader(FILENAME));
               BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile));
               String lineToRemove = "";
               try (BufferedReader br = new BufferedReader(new FileReader(FILENAME))) {
                   String sCurrentLine;

                   // while ((sCurrentLine = br.readLine()) != null) {
                   // System.out.println(sCurrentLine);
                   String currentLine;
                   while ((currentLine = reader.readLine()) != null) {
                       System.out.println(currentLine);
                       String trimmedLine = currentLine.trim();
                       if (trimmedLine.equals(lineToRemove))
                           continue;
                       writer.write(currentLine + System.getProperty("line.separator"));
                       System.out.println("want to remove (y/n)");
                       Scanner sc2 = new Scanner(System.in);
                       String flag = sc2.next();
                       if (flag.equalsIgnoreCase("y"))
                           lineToRemove = currentLine;

                   }
               } catch (IOException e) {
                   e.printStackTrace();
               }
               writer.close();
               reader.close();
               boolean successful = tempFile.renameTo(FILENAME);

           } else if (input == 4) {
               System.out.println("exiting from program");
               return;
           } else {
               System.out.println("invalid entry");

           }
       }
   }

   public static void readlist() {
       try (BufferedReader br = new BufferedReader(new FileReader(FILENAME))) {
           String sCurrentLine;
           while ((sCurrentLine = br.readLine()) != null) {
               System.out.println(sCurrentLine);
           }
       } catch (IOException e) {
           e.printStackTrace();
       }
   }

   public static void addintolist(String item) {
       try (FileWriter fw = new FileWriter(FILENAME, true);
               BufferedWriter bw = new BufferedWriter(fw);
               PrintWriter out = new PrintWriter(bw)) {
           out.println(item);
           bw.write(item);

       } catch (IOException e) {
           e.printStackTrace();
          
       }
   }
}