New improvements

This commit is contained in:
Robert Vokac 2024-01-21 13:04:48 +00:00
parent a8e35a7da4
commit 922809c595
No known key found for this signature in database
GPG Key ID: 693D30BEE3329055
4 changed files with 72 additions and 3 deletions

1
overtime.txt Normal file
View File

@ -0,0 +1 @@
0:09

View File

@ -1,6 +1,8 @@
package rvc.timecalc;
import javax.swing.JOptionPane;
import java.io.File;
import java.io.IOException;
/**
* @author Robert
@ -8,9 +10,13 @@ import javax.swing.JOptionPane;
*/
public class Main {
public static void main(String[] args) {
public static void main(String[] args) throws IOException {
while (true) {
boolean test = false;
File starttimeTxt = new File("starttime.txt");
File overtimeTxt = new File("overtime.txt");
String lastStartTime = Utils.readTextFromFile(starttimeTxt);
String lastOvertime = Utils.readTextFromFile(overtimeTxt);
String startTime =
test ? "7:00" : (String) JOptionPane.showInputDialog(
null,
@ -19,7 +25,7 @@ public class Main {
JOptionPane.PLAIN_MESSAGE,
null,
null,
"7:00"
lastStartTime == null ? "7:00" : lastStartTime
);
String overTime =
test ? "0:00" : (String) JOptionPane.showInputDialog(
@ -29,8 +35,15 @@ public class Main {
JOptionPane.PLAIN_MESSAGE,
null,
null,
"0:00"
lastOvertime == null ? "0:00" : lastOvertime
);
if(!starttimeTxt.exists()) {
Utils.writeTextToFile(starttimeTxt, startTime);
}
if(!overtimeTxt.exists()) {
Utils.writeTextToFile(overtimeTxt, overTime);
}
try {
TimeCalcWindow timeCalc =
new TimeCalcWindow(startTime, overTime);

View File

@ -0,0 +1,54 @@
package rvc.timecalc;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
/**
* @author Robert
* @since 15.02.2024
*/
public class Utils {
private Utils() {
//Not meant to be instantiated.
}
/**
* Count of bytes per one kilobyte.
*/
private static final int COUNT_OF_BYTES_PER_ONE_KILOBYTE = 1024;
/**
* Writes text to a file.
* @param file file
* @param text text
*/
public static void writeTextToFile(final File file, final String text) {
FileOutputStream outputStream;
try {
outputStream = new FileOutputStream(file.getAbsolutePath());
byte[] strToBytes = text.getBytes();
outputStream.write(strToBytes);
outputStream.close();
} catch (IOException e) {
System.err.println(e);
throw new RuntimeException(e);
}
}
/**
* Reads text from file.
* @param file file
* @return String
* @throws IOException thrown, if an error during reading happens
*/
public static String readTextFromFile(final File file)
throws IOException {
return new String(Files.readAllBytes(file.toPath()));
}
}

1
starttime.txt Normal file
View File

@ -0,0 +1 @@
6:39