//converts a string to ConfigFileData obj public static string ConvertToJson(ConfigFileData cfd) { JObject json = new JObject(); json["outputDir"] = cfd.OutputDir; json["sourceDir"] = cfd.SourceDir; json["logName"] = cfd.LogName; json["thumnailSize"] = cfd.ThumnailSize; json["inputDirs"] = new JArray(cfd.InputDirs); return(json.ToString()); }
//generates a string representation for a ConfigFileData obj public static ConfigFileData ConvertToConfigFileData(string json) { JObject jsonObj = JObject.Parse(json); ConfigFileData cfd = new ConfigFileData(); cfd.OutputDir = (string)jsonObj["outputDir"]; cfd.SourceDir = (string)jsonObj["sourceDir"]; cfd.LogName = (string)jsonObj["logName"]; cfd.ThumnailSize = (int)jsonObj["thumnailSize"]; JArray inputDirs = JArray.Parse(jsonObj["inputDirs"].ToString()); cfd.InputDirs = new string[inputDirs.Count]; int i = 0; foreach (JValue val in inputDirs) { cfd.InputDirs[i++] = val.ToString(); } return(cfd); }