Java Proram ASAP Please improve and adjust the program which is down below with the futher moddifications because it does not pass the test cases in Hypergrade. Please remove /n from the program and for test case 4 after this line: Please re-enter the file name or type QUIT to exit:\n quitENTER there needs to be nothing. import java.io.*; import java.util.Scanner; public class ConvertText { public static void main(String[] args) throws Exception { Scanner sc = new Scanner(System.in); System.out.println("Please enter the file name or type QUIT to exit:"); while (true) { String input = sc.next(); if (input.compareTo("QUIT") == 0) { break; } else { String filePath = new File("").getAbsolutePath(); filePath = filePath.concat("/"); filePath = filePath.concat(input); File file = new File(filePath); if (file.exists() && !file.isDirectory()) { BufferedReader br = new BufferedReader(new FileReader(file)); String st; StringBuilder formattedText = new StringBuilder(); while ((st = br.readLine()) != null) { String[] sentences = st.split(" "); for (int i = 0; i < sentences.length; i++) { StringBuilder sb = new StringBuilder(""); sb.append(Character.toUpperCase(sentences[i].charAt(0))); for (int j = 1; j < sentences[i].length(); j++) { char currentChar = sentences[i].charAt(j); if (currentChar == '!' || currentChar == '.') { sb.append(currentChar); if (j + 1 < sentences[i].length()) { sb.append(" "); sb.append(Character.toUpperCase(sentences[i].charAt(j + 1))); j++; } } else if (Character.isUpperCase(currentChar)) { sb.append(" "); sb.append(Character.toLowerCase(currentChar)); } else { sb.append(currentChar); } } formattedText.append(sb.toString() + ""); } formattedText.append("\n"); } System.out.println(formattedText); break; } else { System.out.println("File '" + input + "' is not found."); System.out.println("Please re-enter the file name or type QUIT to exit:"); } } } } } Test Case 1 Please enter the file name or type QUIT to exit:\n text1.txtENTER Stop and smell the roses.\n Test Case 2 Please enter the file name or type QUIT to exit:\n txt1.txtENTER File 'txt1.txt' is not found.\n Please re-enter the file name or type QUIT to exit:\n text1.txtENTER Stop and smell the roses.\n Test Case 3 Please enter the file name or type QUIT to exit:\n text2.txtENTER A true rebel you are! Everyone was impressed. You'll do well to continue in the same spirit.\n Please explain a bit more in the way of footnotes. From the given text it's not clear what are we reading about.\n Test Case 4 Please enter the file name or type QUIT to exit:\n somefile.txtENTER File 'somefile.txt' is not found.\n Please re-enter the file name or type QUIT to exit:\n anotherbadfile.txtENTER File 'anotherbadfile.txt' is not found.\n Please re-enter the file name or type QUIT to exit:\n quitENTER text1.txt StopAndSmellTheRoses. text2.txt ATrueRebelYouAre!EveryoneWasImpressed.You'llDoWellToContinueInTheSameSpirit. PleaseExplainABitMoreInTheWayOfFootnotes.FromTheGivenTextIt'sNotClearWhatAreWeReadingAbout.
Java Proram ASAP
Please improve and adjust the
import java.io.*;
import java.util.Scanner;
public class ConvertText {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
System.out.println("Please enter the file name or type QUIT to exit:");
while (true) {
String input = sc.next();
if (input.compareTo("QUIT") == 0) {
break;
} else {
String filePath = new File("").getAbsolutePath();
filePath = filePath.concat("/");
filePath = filePath.concat(input);
File file = new File(filePath);
if (file.exists() && !file.isDirectory()) {
BufferedReader br = new BufferedReader(new FileReader(file));
String st;
StringBuilder formattedText = new StringBuilder();
while ((st = br.readLine()) != null) {
String[] sentences = st.split(" ");
for (int i = 0; i < sentences.length; i++) {
StringBuilder sb = new StringBuilder("");
sb.append(Character.toUpperCase(sentences[i].charAt(0)));
for (int j = 1; j < sentences[i].length(); j++) {
char currentChar = sentences[i].charAt(j);
if (currentChar == '!' || currentChar == '.') {
sb.append(currentChar);
if (j + 1 < sentences[i].length()) {
sb.append(" ");
sb.append(Character.toUpperCase(sentences[i].charAt(j + 1)));
j++;
}
} else if (Character.isUpperCase(currentChar)) {
sb.append(" ");
sb.append(Character.toLowerCase(currentChar));
} else {
sb.append(currentChar);
}
}
formattedText.append(sb.toString() + "");
}
formattedText.append("\n");
}
System.out.println(formattedText);
break;
} else {
System.out.println("File '" + input + "' is not found.");
System.out.println("Please re-enter the file name or type QUIT to exit:");
}
}
}
}
}
Test Case 1
text1.txtENTER
Stop and smell the roses.\n
Test Case 2
txt1.txtENTER
File 'txt1.txt' is not found.\n
Please re-enter the file name or type QUIT to exit:\n
text1.txtENTER
Stop and smell the roses.\n
Test Case 3
text2.txtENTER
A true rebel you are! Everyone was impressed. You'll do well to continue in the same spirit.\n
Please explain a bit more in the way of footnotes. From the given text it's not clear what are we reading about.\n
Test Case 4
somefile.txtENTER
File 'somefile.txt' is not found.\n
Please re-enter the file name or type QUIT to exit:\n
anotherbadfile.txtENTER
File 'anotherbadfile.txt' is not found.\n
Please re-enter the file name or type QUIT to exit:\n
quitENTER
PleaseExplainABitMoreInTheWayOfFootnotes.FromTheGivenTextIt'sNotClearWhatAreWeReadingAbout.
Step by step
Solved in 5 steps with 3 images