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

I NEED HELP!!! I have my code working properly but now i want it to get the info

ID: 3817729 • Letter: I

Question

I NEED HELP!!! I have my code working properly but now i want it to get the information from a document i created in word. Below is my code. how can i get my program to get the information from the document and provide a ticket if the time is surpassed.

By the way this is all in Java.

public class ParkedCar {
private String make;
private String model;
private String color;
private String licenseNumber;
private int minutesParked;

public ParkedCar(String make, String model, String color,
String licenseNumber, int minutes) {
this.make = make;
this.model = model;
this.color = color;
this.licenseNumber = licenseNumber;
this.minutesParked = (minutes > 0) ? minutes : 0;
}

public ParkedCar(ParkedCar other) {
this.make = other.make;
this.model = other.model;
this.color = other.color;
this.licenseNumber = other.licenseNumber;
this.minutesParked = other.minutesParked;
}

public String getMake() {
return make;
}

public String getModel() {
return model;
}
  
public String getColor() {
return color;
}
  
public String getLicenseNumber() {
return licenseNumber;
}
  
public int getMinutesParked() {
return minutesParked;
}
  
public String toString() {
return "Make: " + make + " " +
"Model: " + model + " " +
"Color: " + color + " " +
"License Number: " + licenseNumber + " " +
"Minutes Parked: " + minutesParked;
}
}

public class ParkingMeter {
private int minutesPurchased;

public ParkingMeter(int minutes) {
minutesPurchased = (minutes > 0) ? minutes : 0;
}
  
public ParkingMeter(ParkingMeter other) {
this.minutesPurchased = other.minutesPurchased;
}

public int getMinutesPurchased() {
return minutesPurchased;
}
  
public String toString() {
return "Minutes Purchased: " + minutesPurchased;
}
}

public class PoliceOfficer {
private String name;
private String badgeNumber;

public PoliceOfficer(String name, String badgeNumber) {
this.name = name;
this.badgeNumber = badgeNumber;
}

public PoliceOfficer(PoliceOfficer other) {
this.name = other.name;
this.badgeNumber = other.badgeNumber;
}
  
public ParkingTicket patrol(ParkedCar car, ParkingMeter meter) {
if (car.getMinutesParked() > meter.getMinutesPurchased()) {
return new ParkingTicket(this,car,meter);
}
return null;
}
  
public String toString() {
return "Officer Name: " + name + " " +
"Badge Number: " + badgeNumber;
}
}

import java.text.DecimalFormat;

public class ParkingTicket {
private static int count = 0;
private PoliceOfficer officer;
private ParkedCar car;
private ParkingMeter meter;
private int fine;

public ParkingTicket(PoliceOfficer officer, ParkedCar car,
ParkingMeter meter) {
++count;
this.officer = officer;
this.car = car;
this.meter = meter;
int hoursOver = (int)Math.ceil((car.getMinutesParked() - meter.getMinutesPurchased())/60.0);
fine = 25 + 10*(hoursOver-1);
}

public String toString() {
DecimalFormat df = new DecimalFormat("$###.00");
return "Parking Ticket #" + count + " " + car + " "
+ meter + " Fine: " + df.format(fine) + " " + officer;
}
}

public class ParkingSimulator {
public static void main(String [] args) {
ParkedCar car = new ParkedCar("Ferrari","F50","Red","Too Fast",60);
ParkingMeter meter = new ParkingMeter(100);
PoliceOfficer officer = new PoliceOfficer("Mary MeterReader","ABC123");
ParkingTicket ticket = officer.patrol(car,meter);
if (ticket != null) {
System.out.println(ticket + " ");
}
else {
System.out.println("No ticket! ");
}
  
ParkedCar car2 = new ParkedCar("Tesla","Roadster","Blue","What Gas",75);
ParkingMeter meter2 = new ParkingMeter(60);
PoliceOfficer officer2 = new PoliceOfficer("Peter MeterReader","XYZ789");
ParkingTicket ticket2 = officer2.patrol(car2,meter2);
if (ticket2 != null) {
System.out.println(ticket2);
}
else {
System.out.println("No ticket!");
}
  
}
}

The document i want my program to get the information from is the following:

Its called: car.txt

looks like this:

Chevrolet

Camaro

RV946

83

120

Kia

Soul

QY229

72

196

Toyota

Camry

PM506

50

126

Ford

Focus

FC938

112

91

Ford

Explorer

BA916

36

171

Ford

Everest

UQ848

57

195

Kia

Sorrento

BW108

55

108

Toyota

Corolla

PD527

103

107

Toyota

Rav4

XS146

68

175

Toyota

Yaris

FY445

103

121

Chevrolet

Spark

QU405

87

144

Chevrolet

Malibu

FT808

37

129

Kia

Optima

CV035

93

170

Kia

Sedona

FT949

67

144

Honda

Civic

QA648

116

91

Honda

Accord

DL815

93

119

Honda

CR-V

BM519

88

125

Mazda

MX-5

XB118

31

143

Mazda

CX-5

VB048

64

108

Subaru

Legacy

XD416

105

153

Chevrolet

Camaro

RV946

83

120

Kia

Soul

QY229

72

196

Toyota

Camry

PM506

50

126

Ford

Focus

FC938

112

91

Ford

Explorer

BA916

36

171

Ford

Everest

UQ848

57

195

Kia

Sorrento

BW108

55

108

Toyota

Corolla

PD527

103

107

Toyota

Rav4

XS146

68

175

Toyota

Yaris

FY445

103

121

Chevrolet

Spark

QU405

87

144

Chevrolet

Malibu

FT808

37

129

Kia

Optima

CV035

93

170

Kia

Sedona

FT949

67

144

Honda

Civic

QA648

116

91

Honda

Accord

DL815

93

119

Honda

CR-V

BM519

88

125

Mazda

MX-5

XB118

31

143

Mazda

CX-5

VB048

64

108

Subaru

Legacy

XD416

105

153

Explanation / Answer

I have asssumed the column headers of the car.txt are,

Car Make, Car Model ,Car number, Minutes Purchased, Minutes Parked.

If Minutes Purchased, Minutes Parked. are interchange , you can interchange them in code ,

car = new ParkedCar(fields[0], fields[1], "Red", fields[2], Integer.parseInt(fields[3]));
           meter = new ParkingMeter(Integer.parseInt(fields[4]));

Interchange them.

I have also asumed color to "red" for all card and single PoliceOffice.

Let me know if you have any doubts.

===Input====

Chevrolet, Camaro,RV946,83,120
Kia,Soul,QY229,72,196
Toyota,Camry,PM506,50,126
Ford,Focus,FC938,112,91
Ford,Explorer,BA916,36,171
Ford,Everest,UQ848,57,195
Kia,Sorrento,BW108,55,108
Toyota,Corolla,PD527,103,107
Toyota,Rav4,XS146,68,175
Toyota,Yaris,FY445,103,121
Chevrolet,Spark,QU405,87,144
Chevrolet,Malibu,FT808,37,129
Kia,Optima,CV035,93,170
Kia,Sedona,FT949,67,144
Honda,Civic,QA648,116,91
Honda,Accord,DL815,93,119
Honda,CR-V,BM519,88,125
Mazda,MX-5,XB118,31,143
Mazda,CX-5,VB048,64,108
Subaru,Legacy,XD416,105,153

====Code===

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class ParkingSimulator {
   @SuppressWarnings("resource")
   public static void main(String[] args) throws IOException {

       String csvFile = "car.csv";
       BufferedReader br = null;
       String line = "";
       String cvsSplitBy = ",";
       ParkedCar car;
       ParkingMeter meter;
       PoliceOfficer officer;
       br = new BufferedReader(new FileReader(csvFile));
       while ((line = br.readLine()) != null) {
           String[] fields = line.split(cvsSplitBy);

           car = new ParkedCar(fields[0], fields[1], "Red", fields[2], Integer.parseInt(fields[4]));
           meter = new ParkingMeter(Integer.parseInt(fields[3]));
           officer = new PoliceOfficer("Mary MeterReader", "ABC123");
           ParkingTicket ticket = officer.patrol(car, meter);
           if (ticket != null) {
               System.out.println(ticket + " ");
           } else {
               System.out.println("No ticket! ");
           }
       }
   }
}

====Output=====

Parking Ticket #1
Make: Chevrolet
Model: Camaro
Color: Red
License Number: RV946
Minutes Parked: 120
Minutes Purchased: 83
Fine: $25.00
Officer Name: Mary MeterReader
Badge Number: ABC123

Parking Ticket #2
Make: Kia
Model: Soul
Color: Red
License Number: QY229
Minutes Parked: 196
Minutes Purchased: 72
Fine: $45.00
Officer Name: Mary MeterReader
Badge Number: ABC123

Parking Ticket #3
Make: Toyota
Model: Camry
Color: Red
License Number: PM506
Minutes Parked: 126
Minutes Purchased: 50
Fine: $35.00
Officer Name: Mary MeterReader
Badge Number: ABC123

No ticket!

Parking Ticket #4
Make: Ford
Model: Explorer
Color: Red
License Number: BA916
Minutes Parked: 171
Minutes Purchased: 36
Fine: $45.00
Officer Name: Mary MeterReader
Badge Number: ABC123

Parking Ticket #5
Make: Ford
Model: Everest
Color: Red
License Number: UQ848
Minutes Parked: 195
Minutes Purchased: 57
Fine: $45.00
Officer Name: Mary MeterReader
Badge Number: ABC123

Parking Ticket #6
Make: Kia
Model: Sorrento
Color: Red
License Number: BW108
Minutes Parked: 108
Minutes Purchased: 55
Fine: $25.00
Officer Name: Mary MeterReader
Badge Number: ABC123

Parking Ticket #7
Make: Toyota
Model: Corolla
Color: Red
License Number: PD527
Minutes Parked: 107
Minutes Purchased: 103
Fine: $25.00
Officer Name: Mary MeterReader
Badge Number: ABC123

Parking Ticket #8
Make: Toyota
Model: Rav4
Color: Red
License Number: XS146
Minutes Parked: 175
Minutes Purchased: 68
Fine: $35.00
Officer Name: Mary MeterReader
Badge Number: ABC123

Parking Ticket #9
Make: Toyota
Model: Yaris
Color: Red
License Number: FY445
Minutes Parked: 121
Minutes Purchased: 103
Fine: $25.00
Officer Name: Mary MeterReader
Badge Number: ABC123

Parking Ticket #10
Make: Chevrolet
Model: Spark
Color: Red
License Number: QU405
Minutes Parked: 144
Minutes Purchased: 87
Fine: $25.00
Officer Name: Mary MeterReader
Badge Number: ABC123

Parking Ticket #11
Make: Chevrolet
Model: Malibu
Color: Red
License Number: FT808
Minutes Parked: 129
Minutes Purchased: 37
Fine: $35.00
Officer Name: Mary MeterReader
Badge Number: ABC123

Parking Ticket #12
Make: Kia
Model: Optima
Color: Red
License Number: CV035
Minutes Parked: 170
Minutes Purchased: 93
Fine: $35.00
Officer Name: Mary MeterReader
Badge Number: ABC123

Parking Ticket #13
Make: Kia
Model: Sedona
Color: Red
License Number: FT949
Minutes Parked: 144
Minutes Purchased: 67
Fine: $35.00
Officer Name: Mary MeterReader
Badge Number: ABC123

No ticket!

Parking Ticket #14
Make: Honda
Model: Accord
Color: Red
License Number: DL815
Minutes Parked: 119
Minutes Purchased: 93
Fine: $25.00
Officer Name: Mary MeterReader
Badge Number: ABC123

Parking Ticket #15
Make: Honda
Model: CR-V
Color: Red
License Number: BM519
Minutes Parked: 125
Minutes Purchased: 88
Fine: $25.00
Officer Name: Mary MeterReader
Badge Number: ABC123

Parking Ticket #16
Make: Mazda
Model: MX-5
Color: Red
License Number: XB118
Minutes Parked: 143
Minutes Purchased: 31
Fine: $35.00
Officer Name: Mary MeterReader
Badge Number: ABC123

Parking Ticket #17
Make: Mazda
Model: CX-5
Color: Red
License Number: VB048
Minutes Parked: 108
Minutes Purchased: 64
Fine: $25.00
Officer Name: Mary MeterReader
Badge Number: ABC123

Parking Ticket #18
Make: Subaru
Model: Legacy
Color: Red
License Number: XD416
Minutes Parked: 153
Minutes Purchased: 105
Fine: $25.00
Officer Name: Mary MeterReader
Badge Number: ABC123