IOException....try...catch...

B

bhavish1987

Dear All,
can someone please post me the correct code for the
following code. I'd like to put the condition, mark must be minimum 0
and maximum 100 using Exception ( try ... catch ).

/*
This Java program list all the marks which are outside the
specified
range and need the lecturer's attention, once all the marks have
been entered.
*/


import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.sql.Array;
/*
* Task3.java
*
*
*/


/**
*
* @author Bhavish Sharma Hurreeram© - (e-mail address removed)
*/


public class Task3 {


private String name;
private String mark;


/** Creates a new instance of Task3 */
public Task3() {


}


public String getName() {
return name;
}


public void setName(String name) {
this.name = name;
}


public String getMark() {
return mark;
}


public void setMark(String mark) {
this.mark = mark;
}


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


Task3 task3 = new Task3();
task3.readFile();
}


public void readFile() throws FileNotFoundException, IOException
{
String line="";
int marks=0;
BufferedReader in = new BufferedReader(new
FileReader("MarkFile.txt"));


while (( line = in.readLine()) != null){
name = line.substring(0,48);
mark = line.substring(48).trim();
try{
marks=Integer.parseInt(mark);
}


catch(Exception e){
//System.out.println("An Erroneous
mark");
displayErrors();
}


for(int i=name.length();i<48;i++) {
name += " ";
}


for(int i=mark.length();i<7;i++) {
mark += " ";
}


setName(name);
setMark(mark);


if(marks < 0 || marks > 100){
displayErrors();
}


}


}


public void displayErrors()
{
System.out.println(getName() + " " + getMark() + " An
Erroneous mark");
}
 
A

Andrew Thompson

Dear All,
can someone please post me the correct code for the
following code.

Damn. I should have checked this one
before sending that last post. Apparently
you are not trolling.

On the other hand, you seem to think of
this discussion group as some sort of
'help desk'. That is not how it works.

For you to get any benefit from these
'technical discussion forums', you need
to ask specific questions, that show you
have done some of the groundwork.

Andrew T.
 
J

Jeff Higgins

bhavish said:
Dear All,
can someone please post me the correct code for the
following code. I'd like to put the condition, mark must be minimum 0
and maximum 100 using Exception ( try ... catch ).

I'm not sure I've understood your request, but...

Alice -1
John Smith 50
Mary Lou 70
Alexander Popandopula 90
Zeppo 101

Alice -1 An Erroneous mark
Zeppo 101 An Erroneous mark

import java.io.*;

public class Task3 {

private String name;
private String mark;

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

Task3 task3 = new Task3();
task3.readFile();
}

public void readFile()
throws FileNotFoundException, IOException {
String line;
int marks;
BufferedReader in = new BufferedReader(new FileReader("MarkFile.txt"));

while (( line = in.readLine()) != null && line.length() > 48){
name = line.substring(0,48);
mark = line.substring(48).trim();
try{
marks=Integer.parseInt(mark);
if(marks < 0 || marks > 100){
throw new IllegalArgumentException();
}
}
catch(Exception e){
displayErrors();
}
}
}

public void displayErrors() {
System.out.println(name + " " + mark + " An Erroneous mark");
}
}
 
J

Jeff Higgins

Jeff said:
while (( line = in.readLine()) != null && line.length() > 48){
name = line.substring(0,48);
mark = line.substring(48).trim();
try{
marks=Integer.parseInt(mark);
if(marks < 0 || marks > 100){
throw new IllegalArgumentException();
}
}
catch(Exception e){
displayErrors();
}
}
}

public void displayErrors() {
System.out.println(name + " " + mark + " An Erroneous mark");
}
}

while (( line = in.readLine()) != null && line.length() > 48){
name = line.substring(0,48);
mark = line.substring(48).trim();
try{
marks=Integer.parseInt(mark);
if(marks < 0 || marks > 100){
throw new IllegalArgumentException();
}
}
catch(NumberFormatException e){
displayErrors("Unable to parse an Integer");
}
catch(IllegalArgumentException e){
displayErrors(name + " " + mark + " An Erroneous mark");
}
}
}

public void displayErrors(String s) {
System.out.println(s);
}
}
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,744
Messages
2,569,482
Members
44,901
Latest member
Noble71S45

Latest Threads

Top