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

Programming Steps: (In Java) (Please screenshot your output) A. Files required o

ID: 3806280 • Letter: P

Question

Programming Steps: (In Java) (Please screenshot your output)

A. Files required or needed to be created:
   1. Artist.java (Given Below)
   2. p7artists.java (Input file to read from)
   3. out1.txt (Output file to write to)

B. Java programs needed to writeand create:
   1. MyArtistList.java:

   - Contains the following:
       1. list - public, Arraylist of Artist.
       This list will contain all entries from "p7artists.txt"


       2. Constructor:
       A constructor that accepts one string parameter which is
       the Input File Name, and will read the file
       to a ArrayList.


       3. Two print() methods:
       i) First one takes two parameters : A heading(name) and the output
       file ID - to print the contents of list to the output file
       ii) No parameter: Print the list contents to the console

C. Construct Step1.java that contans only the following code:
  
public class Step1
{
   public Step1()
{
       MyArtistList myArtists = new MyArtistList("C:/Users/patel/Desktop/JavaFiles/p7artists.txt");
       myArtists.print("Name", "C:/Users/patel/Desktop/JavaFiles/exam3out1.txt");
}

}

D. Construct "Main.java" that calls "Step1" which will produce
an output file "out1.txt" that contains all ArtistID and
ArtistName from "p7artists.txt".

E. Attach the output when answering.

Required files:

p7artists.txt:

1   Acconci
2   Budd
3   Carpenter
4   Dill
5   Edwards
6   Fleming
7   Garber
8   Higgins
9   Ibe
10   Kollasch
11   Lerman
12   Metz
13   Novarre
14   Ortega
15   Parker
16   Penn
17   Pierobon
18   Prinzen
19   Quiroz
20   Rath

Artist.java:

public class Artist implements java.lang.Comparable<Artist> {
// Instance variables
private int artistID; // id of artist
private String artistName; // name of artist
private Art art;

/**
* Constructor
*
* @param name
* @param number
*/
Artist(String name, int number) {
this.artistID = number;
this.artistName = name;
}

/**
* Constructor
*
* @param artistID
* @param artistName
* @param art
*/
public Artist(int artistID, String artistName, Art art) {
this.artistID = artistID;
this.artistName = artistName;
this.art = art;
}

/**
* return the artistName
*
* @return
*/
public String getArtistName() {
return artistName;
}

/**
* set the artistName
*
* @param artistName
*/
public void setArtistName(String artistName) {
this.artistName = artistName;
}

/**
* return the artistId
*
* @return
*/
public int getArtistID() {
return artistID;
}

/**
* set the artistId
*
* @param artistId
*/
public void setArtistID(int artistId) {
this.artistID = artistId;
}

/**
* @return the art
*/
public Art getArt() {
return art;
}

/**
* @param art
* the art to set
*/
public void setArt(Art art) {
this.art = art;
}

public int compareTo(Artist o) {
return this.getArt().compareTo(o.getArt());
}

/**
* toString method
*/
public String toString() {
return String.format("%-9d %-20s", this.artistID, this.artistName);
}
}

Explanation / Answer

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


public class MainArtistsTest {
   public static void main ( String[] args )
   {
       new Step1();
   }
}

class Art implements Comparable<Art> {

   @Override
   public int compareTo(Art o) {
       // TODO Auto-generated method stub
       return 0;
   }

}

class MyArtistList {
  
   private ArrayList<Artist> artists = null;
   public MyArtistList(String filename) {
       Scanner input;
       try {
           input = new Scanner(new File(filename));
           artists = new ArrayList<Artist>();
           while(input != null && input.hasNext()) {
              
               String line = input.nextLine();
               String tokens[] = line.split(" ");
               //System.out.println(tokens.length+""+tokens[1]+" -- "+Integer.parseInt(tokens[0].trim()));
               Artist newA = new Artist(tokens[1],Integer.parseInt(tokens[0].trim()));
               artists.add(newA);
           }
           input.close();
          
          
      
       } catch (FileNotFoundException e) {
           // TODO Auto-generated catch block
           e.printStackTrace();
       }
   }
      
  
   public void print(String heading, String outFile) {
      
       //wite to file
       BufferedWriter writer;
       try {
           writer = new BufferedWriter(new FileWriter(outFile));
           writer.write(heading+" ");
           for(Artist a : artists) {
               writer.write(a.toString()+" ");
           }
           writer.flush();
           writer.close();
       } catch (IOException e) {
           // TODO Auto-generated catch block
           e.printStackTrace();
       }
      
  
   }
  
   public void print() {
       for(Artist a : artists) {
           System.out.println(a.toString());
       }
   }
}
class Step1
{
   public Step1()
{
       MyArtistList myArtists = new MyArtistList("D:/ravi/Cheg/p7artists.txt");
       myArtists.print();
       myArtists.print("Name", "D:/ravi/Cheg/exam3out1.txt");
}

}

class Artist implements java.lang.Comparable<Artist> {
   // Instance variables
   private int artistID; // id of artist
   private String artistName; // name of artist
   private Art art;

   /**
   * Constructor
   *
   * @param name
   * @param number
   */
   Artist(String name, int number) {
   this.artistID = number;
   this.artistName = name;
   }

   /**
   * Constructor
   *
   * @param artistID
   * @param artistName
   * @param art
   */
   public Artist(int artistID, String artistName, Art art) {
   this.artistID = artistID;
   this.artistName = artistName;
   this.art = art;
   }

   /**
   * return the artistName
   *
   * @return
   */
   public String getArtistName() {
   return artistName;
   }

   /**
   * set the artistName
   *
   * @param artistName
   */
   public void setArtistName(String artistName) {
   this.artistName = artistName;
   }

   /**
   * return the artistId
   *
   * @return
   */
   public int getArtistID() {
   return artistID;
   }

   /**
   * set the artistId
   *
   * @param artistId
   */
   public void setArtistID(int artistId) {
   this.artistID = artistId;
   }

   /**
   * @return the art
   */
   public Art getArt() {
   return art;
   }

   /**
   * @param art
   * the art to set
   */

   public void setArt(Art art) {
   this.art = art;
   }

   public int compareTo(Artist o) {
   return this.getArt().compareTo(o.getArt());
   }

   /**
   * toString method
   */
   public String toString() {
   return String.format("%-9d %-20s", this.artistID, this.artistName);
  
   }

}