我被要求编写一个程序来输入员工的身份证号、上班时间和下班时间。数据将写入 .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) ;
}
}