
Patrick B. answered 08/15/21
Math and computer tutor/teacher
import java.lang.Character;
import java.io.*;
class Capitalize
{
public int Go(String input_filename, String output_filename)
{
int iReturn=0;
try
{
FileReader fileReader = new FileReader(input_filename);
BufferedReader bufferedReader = new BufferedReader(fileReader);
FileWriter fileWriter = new FileWriter(output_filename);
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
String inbuff = new String("?");
while (inbuff != null)
{
inbuff = bufferedReader.readLine();
//System.out.println(" read inbuff >" + inbuff + "<");
if (inbuff != null)
{
String tokensInput[] = inbuff.split(" ");
int N = tokensInput.length;
String outbuff = " ";
for (int iLoop=0; iLoop < N ; iLoop++)
{
String curTokenInput = new String(tokensInput[iLoop]);
//System.out.println(" input token at index " + (iLoop) + " >" + curTokenInput + "<");
char chFirstChar = curTokenInput.charAt(0);
char chFirstCharUpperCase = Character.toUpperCase(chFirstChar);
String curTokenOutput = chFirstCharUpperCase + curTokenInput.substring(1);
System.out.print(curTokenOutput + " ");
outbuff = outbuff + curTokenOutput + " ";
}
bufferedWriter.write(outbuff);
bufferedWriter.newLine();
}
else
{
break;
}
}
bufferedReader.close();
bufferedWriter.close();
}
catch (IOException ex)
{
System.out.println(" Exception error occurs reading input file ");
iReturn=-1;
}
return(iReturn);
}
public static void main(String args[])
{
if (args.length>0)
{
Capitalize capitalizer = new Capitalize();
if (args.length>1)
{
capitalizer.Go(args[0],args[1]);
}
else
{
String default_output_filename = "capitalizer_output.dat";
capitalizer.Go(args[0],default_output_filename);
}
}
else
{
System.out.println(" Please specify the filename .... \n");
System.out.println(" system prompt ~$:> Capitalize input-filename output-filename \n");
System.out.println(" input filename is required; output filename is optional ");
}
}
}