従業員の ID 番号、入退室時間を入力するプログラムを作成するように依頼されました。データは .txt ファイルに書き込まれます。私は FileWriter を使用することになっていることを理解していますが、情報をタブで表示できるかどうか尋ねてもよろしいですか? .txt ファイルを次のようにしたいと思います。
Name Time in Time out Total hours worked Salary
Name1 08:00 05:00 9 4000
Name2 09:00 04:00 7 3000
また、12 時間単位で総労働時間を計算するにはどうすればよいでしょうか。ここに私のソースコードがあります:
import java.util.Scanner;
import java.io.*;
import java.util.Date;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
class AYANYAN
{static String ans ;
static int empNumber ;
static String timeIn, timeOut;
static Scanner s = new Scanner(System.in);
static String name[] = { "Ayan Ramirez", "Jenifer Sumbi", "Gen Estrada" , "Tugba Cakir", "Lennox Schatje Huisden"};
public static void main(String args[])throws IOException
{
FileWriter fWriter = new FileWriter("EmpData.txt");
for (int i = 0; i < name.length; i++)
{
fWriter.write(name[i] + "\n");
}
fWriter.close();
start () ;
}
public static void control ()
{
System.out.print ("\n\nPlease select one of the following: \nA. Sign Off\nB. Enter Time in\nC. Enter Time out\nD. Exit Program\n") ;
ans = s.next() ;
if (ans.equalsIgnoreCase("A")){
signOff () ;
} else if (ans.equalsIgnoreCase("B")) {
timeIn () ;
} else if (ans.equalsIgnoreCase("C")) {
timeOut () ;
} else if (ans.equalsIgnoreCase("D")){
System.out.print ("\nBYE!\n\n\nProgram made by: Ayan Ramirez\n") ;
} else {
System.out.print ("ERROR!") ;
System.exit(0);
}
}
public static void start ()
{
System.out.print ("Please enter your id number: ") ;
empNumber = s.nextInt();
if (empNumber == 12345){
System.out.print ("\nSigned in as: " + name[0]);
control() ;
} else if (empNumber == 12346){
System.out.print ("\nSigned in as: " + name[1]);
control() ;
}else if (empNumber == 12347){
System.out.print ("\nSigned in as: " + name[2]);
control() ;
}else if (empNumber == 12348){
System.out.print ("\nSigned in as: " + name[3]);
control() ;
} else if (empNumber == 12349){
System.out.print ("\nSigned in as: " + name[4]);
control() ;
}
else {
System.out.print ("\nNTRUDER ALERT!\n\nPLEASE ENTER THE CORRECT ID NUMBER!") ;
start () ;
}
}
public static void signOff ()
{
System.out.print ("Signing off...\n") ;
start () ;
}
public static String timeIn ()
{
System.out.print ("Please enter time in: ") ;
timeIn = s.next () ;
control () ;
return (timeIn) ;
}
public static String timeOut ()
{
System.out.print ("Please enter time out: ") ;
timeOut = s.next () ;
control () ;
return (timeOut) ;
}
}