I am a beginner in the Swift language. I have multiple arrays in one view controller from which I am loading data in the tableview.
My code is:
let filemanager = FileManager.default var folderNameArray = [String]() var completedExerciseArray = [String]() var getCompletedExerciseNamesArray : [String] = [] var getCompletedDayArray = [String]() var getCompletedDateArray = [String]() var getCompletedTimeArray = [String]() func getAllSavedDictionary() { let paths = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.documentDirectory, FileManager.SearchPathDomainMask.allDomainsMask, true) for everyFileName in folderNameArray { if let documentPath = paths.first { let filePath = NSMutableString(string: documentPath).appendingPathComponent(everyFileName) let URL = NSURL.fileURL(withPath: filePath) if let dictionary = NSMutableDictionary(contentsOf: URL){ let savedDayDateArray = dictionary.value(forKey: "DayDate") as? [String] let savedDayTimeArray = dictionary.value(forKey: "DayTime") as? [String] let savedDayNumberArray = dictionary.value(forKey: "DayNumber") as? [String] let savedCompletedExerciseNamesArray = dictionary.value(forKey: "completedExerciseNames") as? [String] self.getCompletedExerciseNamesArray.append(contentsOf: savedCompletedExerciseNamesArray!) self.getCompletedDayArray.append(contentsOf: savedDayNumberArray!) self.getCompletedDateArray.append(contentsOf: savedDayDateArray!) self.getCompletedTimeArray.append(contentsOf: savedDayTimeArray!) historyTableview.reloadData() } } } } It's working fine but I want to know how I can make a model instead of arrays and load that model into the tableview. Here in for everyFileName in folderNameArray, folderNameArray holds all the folders from FileManager.