import java.io.BufferedWriter; import java.io.FileWriter; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.time.DayOfWeek; import java.time.LocalDate; import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.List; import java.util.Locale; /** * GeneralMethods is a class for commen public methods. * * @version 1.0 * @auhtor Felix Wöstemeyer */ public class GeneralMethods { /** * The method getDayNumberNew() gets the Number of day in week * * @param dateString date as String e.g. 12.12.2022 * @return the Number of day in week * @version 1.0 * @author Madeleine Vigier */ public static String getDayNumberNew(String dateString) { DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy"); formatter = formatter.withLocale(Locale.GERMANY); // Locale specifies human language for translating, and cultural norms for lowercase/uppercase and abbreviations and such. Example: Locale.US or Locale.CANADA_FRENCH LocalDate date = LocalDate.parse(dateString, formatter); DayOfWeek day = date.getDayOfWeek(); return getDayName(day.getValue()); } /** * The method getDayName() gets the weekday * * @param dayNumber dayNumber e.g. 1 for Monday * @return weekday * @version 1.0 * @author Madeleine Vigier */ public static String getDayName(int dayNumber) { if (dayNumber == 1) { return "Montag"; } if (dayNumber == 2) { return "Dienstag"; } if (dayNumber == 3) { return "Mittwoch"; } if (dayNumber == 4) { return "Donnerstag"; } if (dayNumber == 5) { return "Freitag"; } return null; } // /**The method writeData saves the given data to a certain file. // * // * @param pathWrite the given filepath to write // * @param data the data to be saved // */ // public static void writeData(String pathWrite, ArrayList data){ // try{ // BufferedWriter writer = new BufferedWriter(new FileWriter(pathWrite)); // for (String d : data) { // writer.write(d); // writer.newLine(); // } // writer.close(); // } catch (IOException e) { // e.printStackTrace(); // } // } // // /** // * Author: Sabine Gubitz // *ddd // * The method read Data interprets a file and returns an useable list for other methods. // * Files to be read have to use : as a divider between attributes // * // * @param pathRead determines the filename of the file that will be read // * @return menueList, userList, orderList depending on Data read // */ // public static ArrayList readData(String pathRead) { // Path path = Paths.get(pathRead); // // try { // List rows = Files.readAllLines(path); // // if (pathRead.equals("menue.txt")) { // ArrayList menueList = new ArrayList<>(); // // for (String row : rows) { // String[] parts = row.split(":"); // // String day = parts[0]; // String date = parts[1]; // String meat = parts[2]; // String vegi = parts[3]; // String vegan = parts[4]; // String desert1 = parts[5]; // String desert2 = parts[6]; // menueList.add(day + "," + date + "," + meat + "," + vegi + "," + vegan + "," + desert1 + "," + desert2); // } // return menueList; // // } else if (pathRead.equals("users.txt")){ // ArrayList userList = new ArrayList<>(); // // for (String row : rows) { // String[] parts = row.split(":"); // // String nameParent1 = parts[0]; // String nameParent2 = parts[1]; // String billAddress = parts[2]; // String phonenumber = parts[3]; // String nameChildren = parts[4]; // String password = parts[5]; // } // return userList; // // } else if (pathRead.equals("orders.txt")) { // ArrayList orderList = new ArrayList<>(); // // for (String row : rows) { // String[] parts = row.split(":"); // // String date = parts[0]; // String meat = parts[1]; // String meatCount = parts[2]; // String vegi = parts[3]; // String vegiCount = parts[4]; // String vegan = parts[5]; // String veganCount = parts[6]; // String desert1 = parts[7]; // String desert1Count = parts[8]; // String desert2 = parts[9]; // String desert2Count = parts[10]; // } // return orderList; // // } // } catch (IOException e) { // e.printStackTrace(); // } // return null; // } // // // /** // * The method writeData2 writes the data of a List into a txt file. // * @param pathWrite determines the filename of the file that will be written // * @param listToWrite determines which ArrayList is to be used for writing the file // */ // public void writeData2 (String pathWrite, ArrayList listToWrite){ // if (pathWrite.equals("users.txt")) { // // } else if (pathWrite.equals("orders.txt")) { // // } // } }