Я бы хотел, чтобы мои сотрудники заполняли это в конце каждого дня. Как я могу сохранять данные каждого дня в новую таблицу? Однажды я также попытаюсь сделать пользовательский интерфейс для удобства использования. Кстати, это также далеко не закончено, все еще нужно добавить способ сохранения двух наборов данных за один день, поскольку в один и тот же день могут работать два гонщика. И пока нет обнаружения ошибок.
public static void main(String[] args) {
//<---Declaring input method
Scanner scan = new Scanner(System.in);
//<---Declaring Variables
String Rider;
int SLetters;
int LLetters;
int SParcels;
int LParcels;
int RedirectedMail;
int RTSMail;
int SigItems;
int VSortStart;
int VSortFinish;
int SetupTimeBeat1Parcels;
int SetupTimeBeat2Parcels;
int SetupTimeBeat3Parcels;
int SetupTimeMainStParcels;
int SetupTimeLargeParcels;
int SetupTimeBeat1Letters;
int SetupTimeBeat2Letters;
int SetupTimeBeat3Letters;
int SetupTimeMainStLetters;
int DeliveryStartTime;
int DeliveryFinishTime;
int LargeParcelDeliveryStart;
int LargeParcelDeliveryFinish;
int BikeDistanceStart;
int BikeDistanceFinish;
int CarDistanceStart;
int CarDistanceFinish;
int Breaks;
int ConfirmCount = 0;
//<---Asking for User input and collecting the data
//<---While loop to make sure data is correct
while(ConfirmCount == 0) {
System.out.print("Enter number of Small Letters: ");
SLetters = scan.nextInt();
System.out.print("Enter number of Large Letters: ");
LLetters = scan.nextInt();
System.out.print("Enter number of Small Parcels: ");
SParcels = scan.nextInt();
System.out.print("Enter number of Large Parcels: ");
LParcels = scan.nextInt();
System.out.print("Enter number of Redirected Letters: ");
RedirectedMail = scan.nextInt();
System.out.print("Enter number of RTS Letters: ");
RTSMail = scan.nextInt();
System.out.print("Enter number of Signature Items: ");
SigItems = scan.nextInt();
System.out.print("Enter V-Sort Start Time (24hr time and no ':' e.g 0830): ");
VSortStart = scan.nextInt();
System.out.print("Enter V-Sort Finish Time (24hr time and no ':' e.g 0830): ");
VSortFinish = scan.nextInt();
System.out.print("Enter Setup Time for Beat 1 Parcels: ");
SetupTimeBeat1Parcels = scan.nextInt();
System.out.print("Enter Setup Time for Beat 2 Parcels: ");
SetupTimeBeat2Parcels = scan.nextInt();
System.out.print("Enter Setup Time for Beat 3 Parcels: ");
SetupTimeBeat3Parcels = scan.nextInt();
System.out.print("Enter Setup Time for Beat 1 Letters: ");
SetupTimeBeat1Letters = scan.nextInt();
System.out.print("Enter Setup Time for Beat 2 Letters: ");
SetupTimeBeat2Letters = scan.nextInt();
System.out.print("Enter Setup Time for Beat 3 Letters: ");
SetupTimeBeat3Letters = scan.nextInt();
System.out.print("Enter Setup Time for Main St Letters: ");
SetupTimeMainStLetters = scan.nextInt();
System.out.print("Enter Setup Time for Main St Parcels: ");
SetupTimeMainStParcels = scan.nextInt();
System.out.print("Enter Setup Time for Large Parcels: ");
SetupTimeLargeParcels = scan.nextInt();
System.out.print("Enter Time You Started Delivering on the Bike: ");
DeliveryStartTime = scan.nextInt();
System.out.print("Enter Time You Finished Delivering on the Bike: ");
DeliveryFinishTime = scan.nextInt();
System.out.print("Enter Time You Started Delivering in the Ute: ");
LargeParcelDeliveryStart = scan.nextInt();
System.out.print("Enter Time You Finished Delivering in the Ute: ");
LargeParcelDeliveryFinish = scan.nextInt();
System.out.print("Enter Break Time (Minutes): ");
Breaks = scan.nextInt();
//<---Displaying and confirming user data
System.out.println();
System.out.println("Thank you for entering the data.");
System.out.println();
System.out.println("Please read over the following and confirm data is correct");
System.out.println();
System.out.println("Small Letters = " + SLetters);
System.out.println("Large Letters = " + LLetters);
System.out.println("Small Parcels = " + SParcels);
System.out.println("Large Parcels = " + LParcels);
System.out.println("Redirected Letters = " + RedirectedMail);
System.out.println("RTS Letters = " + RTSMail);
System.out.println("Signature Items = " + SigItems);
System.out.println("V-Sort Start Time = " + VSortStart);
System.out.println("V-Sort Finish Time = " + VSortFinish);
System.out.println("Beat 1 Setup Time for Parcels = " + SetupTimeBeat1Parcels);
System.out.println("Beat 2 Setup Time for Parcels = " + SetupTimeBeat2Parcels);
System.out.println("Beat 3 Setup Time for Parcels = " + SetupTimeBeat3Parcels);
System.out.println("Setup Time for Main St Parcels = " + SetupTimeMainStParcels);
System.out.println("Setup Time for Large Parcels = " + SetupTimeLargeParcels);
System.out.println("Beat 1 Setup Time for Letters = " + SetupTimeBeat1Letters);
System.out.println("Beat 2 Setup Time for Letters = " + SetupTimeBeat2Letters);
System.out.println("Beat 3 Setup Time for Letters = " + SetupTimeBeat3Letters);
System.out.println("Setup Time for Main St Letters = " + SetupTimeMainStLetters);
System.out.println("Bike Delivery Start Time = " + DeliveryStartTime);
System.out.println("Ute Delivery Start Time = " + LargeParcelDeliveryStart);
System.out.println("Bike Delivery Finish Time = " + DeliveryFinishTime);
System.out.println("Ute Delivery Finish Time = " + LargeParcelDeliveryFinish);
System.out.println("Breaks = " + Breaks + " minutes");
System.out.println();
System.out.print("Is this information correct? Y or N?: ");
String IsCorrect;
IsCorrect = scan.next();
if (IsCorrect.contains("Y")){
ConfirmCount++;
}
else {
System.out.println();
System.out.println("Please try again.");
System.out.println();
}
}
System.out.println();
System.out.println("Thank You! Have a great day :)");
}
}




Вы можете использовать зависимости, связанные с poi, так же, как это
WritableWorkbook book = Workbook.createWorkbook(new File("c:\\test.xls"));
WritableSheet sheet = book.createSheet("sheet1", 0);
Label label = new Label(0, 0, "test");
sheet.addCell(label);
jxl.write.Number number = new jxl.write.Number(1, 0, 555.12541);
sheet.addCell(number);
book.write();
book.close();
Это может редактировать окна Excel, вы можете узнать об операциях, связанных с poi, через Google. конечно, я думаю, что лучше всего создать веб-проект с помощью javaEE.
С точки зрения технологии вы правы. Моя идея заключается в том, что у компании должны быть причины тратить какие-то средства на оптимизацию работы. Конечно, это нужно учитывать в будущем.
Вы можете воспользоваться помощью POI АПАЧИ, чтобы записать свои данные в электронную таблицу.
Посмотреть здесь - https://www.tutorialspoint.com/apache_poi/apache_poi_spreadsheets.htm
Короче говоря, логика поможет вам добавить электронную таблицу в существующий файл Excel.
HSSFWorkbook workbook = null; // creating a new workbook
File file = new File(context.getExternalFilesDir(null), "Sample.xls"); //getting a file with this name if not exist will create a new excel file with this in below steps
FileOutputStream fileOut = new FileOutputStream(file); // output stream is used to write to a file
if (file.exists()) { // if file exists add a new workbook to it
try {
workbook = (HSSFWorkbook)WorkbookFactory.create(file);
} catch (InvalidFormatException e) {
e.printStackTrace();
}
//add logic to convert the input to excel rows and write it into a wrokbook like this
HSSFSheet sheet = workbook.createSheet("Sample sheet2");
}
else{ // create a new workbook
workbook = new HSSFWorkbook();
// for the first time if nothing is there this will execute
//add logic to convert the input to excel rows and write it into a wrokbook like this
HSSFSheet sheet = workbook.createSheet("Sample sheet1");
}
workbook.write(fileOut); // closing the workbook after all operations
fileOut.close(); // closing the output stream
This might seem a little complex if you are not that familiar with JAVA but I would recommend you ask questions if anything doesn't make sense here.
Вы можете просто сохранить все данные в файле .csv, который затем можно открыть в виде электронной таблицы и проанализировать по своему усмотрению. Но вам действительно стоит поработать над более удобным решением.