futil = bsf.import("org.apache.commons.io.FileUtils") cdl = bsf.import("org.json.CDL") files = bsf.import("java.io.File") fr= bsf.import("java.io.FileReader") jsonO = bsf.import("org.json.JSONObject") jsonA = bsf.import("org.json.JSONArray") parser = bsf.import("org.json.simple.parser.JSONParser") flatter = bsf.import("com.github.opendevl.JFlat") parser = parser~new --JSON Parser json= "/Users/felixschonleitner/Desktop/BP2-Endprojekt/example.json" /*Das File auswählen und einlesen - funktioniert*/ file = files~new(json) filereader = fr~new(file) read = parser~parse(filereader) object = jsonO~new(read) -- ein JSONObject erstellt string = object~toString() -- aus dem JSON File einen String machen say "Parsed JSON: "string --funktioniert /*1. Versuch */ doc = files~new("/Users/felixschonleitner/Desktop/BP2-Endprojekt/test.csv") -- ein File erstellen, wohin das csv geschrieben werden soll util = futil~new -- neues FileUtil conv = cdl~new -- neuesCDL arr = jsonA~new -- JSONArray /*Hier funktioniert die Methode toString dann nicht so, wie im Java Beispiel*/ array = arr~put(object) -- JSONObject zu JSONArray csv = conv~toString(array) -- JSONArray in csvString umwandeln say "CSV: "csv --util~writeStringToFile(doc, csv) /*--------------------------------------------*/ /*2. Versuch */ flatMe = flatter~new(string) final = flatMe~json2Sheet()-- ~write2csv("/Users/felixschonleitner/Desktop/BP2-Endprojekt/test.csv") --final~write2csv("/Users/felixschonleitner/Desktop/BP2-Endprojekt/final.csv") /*--------------------------------------------*/ ::requires BSF.CLS