package config; import java.io.File; import java.io.IOException; import org.ini4j.Wini; public class config_file { private String configPath = null; public boolean createConfig() throws IOException{ // Unterscheide zwischen Windows/Unix String OSName = System.getProperty("os.name").toLowerCase(); System.out.println("Machine's OS: " + OSName); if (OSName.contains("windows")) { // Windows machine. Use the environment variable 'APPDATA' which // should point to a path similar to: // C:\Users\\AppData\Roaming String appDataPath = System.getenv("APPDATA"); if (!appDataPath.isEmpty()) { System.out.println("APPDATA: " + appDataPath); configPath = appDataPath + "\\bwSuite\\config.ini"; } else { // APPDATA was empty, let's build it ourselves... System.out.println("APPDATA ist leer."); configPath = System.getProperty("user.home") + "\\AppData\\Roaming\\bwSuite\\config.ini" } } else if (OSName.contains("linux")) { configPath=System.getProperty("user.home") + "/.config/bwSuite/config.ini"; } if (configPath == null) { System.out.println("Config file path could not be determined."); } //config_file="C:\\Users\\"+System.getProperty("user.name")+"\\AppData\\Roaming\\bwLehrpoolSuite"; //File fuer den Ordner erzeugen File configFile=new File(configPath); Wini ini; //Pruefen ob Ordner schon existiert if(!configFile.exists()) { System.out.println("Ordner \"bwLehrpoolSuite\" exisitiert nicht - lege ihn jetzt an."); //Wenn nicht erzeuge Ordner if (!configFile.getParentFile().mkdirs()) { System.out.print("Konnte Verzeichnisstruktur nicht erstellen: " + configFile.getParentFile()); System.out.println(" - keine weitere Aktion"); // jetzt nichts mehr } //Erzeuge eine neue Datei configFile.createNewFile(); ini=new Wini(configFile); //Wenn in die Datei geschrieben werden kann if(configFile.canWrite()==true) { System.out.println("Erzeuge \"config.ini.\""); //Schreibe Config ini.put("main", "BillOfRights", false); ini.put("main", "vmware", false); ini.put("main", "Benutzername speichern", false); ini.put("main", "Benutzername", ""); ini.put("main", "Letzter Downloadpfad", ""); ini.put("main", "Letzter Uploadpfad", ""); ini.store(); return true; } else { System.out.println("Konnte \"config.ini\" nicht anlegen - keine weitere Aktion."); } } else { System.out.println("Ordner \"bwLehrpoolSuite\" existiert bereits - keine weitere Aktion."); //Wenn Ordner schon existiert, pruefe ob Datei existiert if(!configFile.exists()) { System.out.println("\"config.ini\" existiert nicht - lege jetzt an."); //Wenn nicht, erzeuge diese configFile.createNewFile(); ini=new Wini(configFile); if(configFile.canWrite()==true) { System.out.println("Schreibe jetzt \"config.ini\"."); //Schreibe Konfig in File ini.put("main", "BillOfRights",false); ini.put("main", "vmware", false); ini.put("main", "Benutzername speichern", false); ini.put("main", "Benutzername", ""); ini.put("main", "Letzter Downloadpfad", ""); ini.put("main", "Letzter Uploadpfad", ""); ini.store(); return true; } else { System.out.println("Kann \"config.ini\" nicht schreiben - keine weitere Aktion."); } } else { System.out.println("\"config.ini\" existiert bereits - keine weitere Aktion."); } } return true; } }