public T LoadFromLocalStorage <T>(string filename, bool loadFromserver = false) { var localObj = (T)Activator.CreateInstance(typeof(T)); var xmlFilename = filename.Replace(".json", ".xml"); if (Exists(xmlFilename)) { var testdata = _fileUtility.Load(xmlFilename); var length = testdata.Length; } // 1 read json if (filename.EndsWith(".json", StringComparison.CurrentCultureIgnoreCase) && Exists(filename)) { string json = _fileUtility.Load(filename); localObj = JsonConvert.DeserializeObject <T>(json); } else { if (Exists(xmlFilename)) { var xmlString = _fileUtility.Load(xmlFilename); xmlString = xmlString.Replace("<int>", "<string>"); xmlString = xmlString.Replace("</int>", "</string>"); xmlString = xmlString.Replace("ArrayOfInt", "ArrayOfString"); using (var reader = new StringReader(xmlString)) { XmlSerializer serializer = new XmlSerializer(typeof(T)); localObj = (T)serializer.Deserialize(reader); SaveToLocalStorage(localObj, filename); //Save to json format } } } return(localObj); }