/// <summary> /// Create file number given file properties /// </summary> /// <param name="fileNameProp">File date properties</param> private void SetFileNumber(ref FileNameProp fileNameProp) { String _fileNumber = ""; try { Log.Log(LogType.FILE, LogLevel.DEBUG, " SetFileNumber() -->> is STARTED"); _fileNumber = fileNameProp.FNYearPart + fileNameProp.FNMonthPart + fileNameProp.FNDayPart + fileNameProp.FileNumber; fileNameProp.FileNumber = Convert.ToInt64(_fileNumber); Log.Log(LogType.FILE, LogLevel.DEBUG, " SetFileNumber() -->> is successfully FINISHED"); } catch (Exception ex) { Log.Log(LogType.FILE, LogLevel.ERROR, " SetFileNumber() -->> An error occurred" + ex.ToString()); } }
/// <summary> /// Create file number given file properties /// </summary> /// <param name="fileNameProp">File date properties</param> private void SetFileNumber(ref FileNameProp fileNameProp) { try { Log.Log(LogType.FILE, LogLevel.DEBUG, " SetFileNumber() -->> is STARTED"); if (_dayDictionaryEn.ContainsKey(fileNameProp.FNDayPart.ToLower())) { fileNameProp.FNDayPart = _dayDictionaryEn[fileNameProp.FNDayPart.ToLower()].ToString(); } else if (_dayDictionaryTr.ContainsKey(fileNameProp.FNDayPart.ToLower())) { fileNameProp.FNDayPart = _dayDictionaryTr[fileNameProp.FNDayPart.ToLower()].ToString(); } if (_mounthDictionaryEn.ContainsKey(fileNameProp.FNMonthPart.ToLower())) { fileNameProp.FNMonthPart = _mounthDictionaryEn[fileNameProp.FNMonthPart.ToLower()].ToString(); } else if (_mounthDictionaryTr.ContainsKey(fileNameProp.FNMonthPart.ToLower())) { fileNameProp.FNMonthPart = _mounthDictionaryTr[fileNameProp.FNMonthPart.ToLower()].ToString(); } String _fileNumber = fileNameProp.FNYearPart + fileNameProp.FNMonthPart + fileNameProp.FNDayPart + fileNameProp.FileNumber; fileNameProp.FileNumber = Convert.ToInt64(_fileNumber); Log.Log(LogType.FILE, LogLevel.DEBUG, " SetFileNumber() -->> is successfully FINISHED"); } catch (Exception ex) { Log.Log(LogType.FILE, LogLevel.ERROR, " SetFileNumber() -->> An error occurred" + ex.ToString()); } }
/// <summary> /// /// </summary> /// <param name="fileNameList"></param> /// <returns></returns> private List<String> SortFileNames(List<String> fileNameList) { try { Log.Log(LogType.FILE, LogLevel.DEBUG, " SortFileNames() -->> is STARTED "); List<String> _fileNameList = new List<String>(); FileNameProp fileNameProp = new FileNameProp(); FileNameProp[] fileNamePropArray; ArrayList SortedList = new ArrayList(); //CreateDateDictionarys(); if (_fileNameFilters != null) { foreach (String fileName in fileNameList) { foreach (String fileNamefilter in _fileNameFilters) { fileName.Contains(fileNamefilter); _fileNameList.Add(fileName); break; } } } else { _fileNameList = fileNameList; } fileNamePropArray = new FileNameProp[_fileNameList.Count]; int k = 0; foreach (String line in _fileNameList) { fileNameProp = new FileNameProp(); fileNameProp.FileName = line; String[] subLine0 = line.Split(new Char[] { '_' }, StringSplitOptions.RemoveEmptyEntries); String[] subLine0_3 = subLine0[3].Split(new Char[] { '.' }, StringSplitOptions.RemoveEmptyEntries); fileNameProp.FNGenericPart = subLine0[0] + "/" + subLine0[2] + "/" + subLine0_3[1]; fileNameProp.FNNumberPart = subLine0[1] + "/" + subLine0_3[0]; SetFileNumber(ref fileNameProp); fileNamePropArray[k] = fileNameProp; k++; } if (fileNamePropArray[0].FileNumber == 0) { Array.Sort(fileNamePropArray, new FileNamePropComparerByGenericPart()); } else { Array.Sort(fileNamePropArray); } _fileNameList.Clear(); foreach (FileNameProp item in fileNamePropArray) { _fileNameList.Add(item.FileName); //Log.Log(LogType.FILE, LogLevel.DEBUG, " SortFileNames() -->> Sorting file name is " + item.FileName); } Log.Log(LogType.FILE, LogLevel.DEBUG, " SortFileNames() -->> is successfully FINISHED."); for (int i = 0; i < _fileNameList.Count; i++) { SortedList.Add(_fileNameList[i]); } SortedList.Sort(); _fileNameList.Clear(); for (int i = 0; i < SortedList.Count; i++) { _fileNameList.Add(SortedList[i].ToString()); } for (int i = 0; i < _fileNameList.Count; i++) { Log.Log(LogType.FILE, LogLevel.DEBUG, " SortFileNames() -->> Sorting file name is " + _fileNameList[i]); } return _fileNameList; } catch (Exception ex) { Log.Log(LogType.FILE, LogLevel.ERROR, " SortFileNames() -->> An error occurred" + ex.ToString()); return null; } }
/// <summary> /// /// </summary> /// <param name="fileNameList"></param> /// <returns></returns> private List<String> SortFileNames(List<String> fileNameList) { Log.Log(LogType.FILE, LogLevel.DEBUG, " SortFileNames() -->> is STARTED "); try { List<String> _fileNameList = new List<String>(); List<String> _fileNameListNew = new List<String>(); FileNameProp fileNameProp = new FileNameProp(); FileNameProp[] fileNamePropArray; long[] fileNameindexes = new long[fileNameList.Count]; if (_fileNameFilters != null) { foreach (String fileName in fileNameList) { foreach (String fileNamefilter in _fileNameFilters) { fileName.Contains(fileNamefilter); _fileNameList.Add(fileName); break; } } } else { _fileNameList = fileNameList; } fileNamePropArray = new FileNameProp[_fileNameList.Count]; int k = 0; foreach (String line in _fileNameList) { fileNameProp = new FileNameProp(); fileNameProp.FileName = line; String[] subLine0 = line.Split(new Char[] { '-' }, StringSplitOptions.RemoveEmptyEntries); fileNameProp.FNGenericPart = subLine0[0]; int splitIndex = subLine0[0].IndexOf("20");//valid for about 90 years fileNameProp.FNYearPart = subLine0[0].Substring(splitIndex, 4); fileNameProp.FNMonthPart = subLine0[0].Substring(splitIndex + 4, 2); fileNameProp.FNDayPart = subLine0[0].Substring(splitIndex + 6, 2); fileNameProp.FNNumberPart = subLine0[1]; SetFileNumber(ref fileNameProp); fileNamePropArray[k] = fileNameProp; fileNameindexes[k] = fileNameProp.FileNumber; k++; } if (fileNamePropArray[0].FileNumber == 0) { Array.Sort(fileNamePropArray, new FileNamePropComparerByGenericPart()); } else { Array.Sort(fileNameindexes, fileNamePropArray); } _fileNameList.Clear(); foreach (FileNameProp item in fileNamePropArray) { string fileName = item.FileName; if (string.IsNullOrEmpty(tempCustomVar1) || tempCustomVar1 == "MSGTRK") { if (item.FileName.StartsWith("MSGTRK") && !item.FileName.StartsWith("MSGTRKM")) { _fileNameList.Add(fileName); _fileNameListNew.Add(fileName); Log.Log(LogType.FILE, LogLevel.DEBUG, " SortFileNames() -->> Sorting file name is " + item.FileName); } } else if (tempCustomVar1 == "MSGTRKM") { if (item.FileName.StartsWith("MSGTRKM")) { _fileNameList.Add(fileName); _fileNameListNew.Add(fileName); Log.Log(LogType.FILE, LogLevel.DEBUG, " SortFileNames() -->> Sorting file name is " + item.FileName); } } //Log.Log(LogType.FILE, LogLevel.DEBUG, " SortFileNames() -->> Sorting file name is " + item.FileName); } Log.Log(LogType.FILE, LogLevel.DEBUG, " SortFileNames() -->> is successfully FINISHED."); for (int i = 0; i < _fileNameList.Count; i++) { Log.Log(LogType.FILE, LogLevel.DEBUG, " SortFileNames() -->> FileNames : " + _fileNameList[i].ToString()); } return _fileNameListNew; } catch (Exception ex) { Log.Log(LogType.FILE, LogLevel.ERROR, " SortFileNames() -->> An error occurred" + ex.ToString()); return null; } }