コード例 #1
0
ファイル: DataReader.cs プロジェクト: mem3nt0/ediabaslib
            private string ResolveFileName(List <string> dirList, out bool redirectFile)
            {
                redirectFile = false;
                try
                {
                    if (!IndexSubSys.HasValue)
                    {
                        foreach (string subDir in dirList)
                        {
                            string fileName = Path.Combine(subDir, _fullName.ToLowerInvariant() + FileExtension);
                            if (File.Exists(fileName))
                            {
                                return(fileName);
                            }

                            fileName = Path.Combine(subDir, _baseName.ToLowerInvariant() + FileExtension);
                            if (File.Exists(fileName))
                            {
                                return(fileName);
                            }
                        }
                    }

                    if (!string.IsNullOrEmpty(PartNumber) && PartNumber.Length >= 2)
                    {
                        foreach (string subDir in dirList)
                        {
                            string part1        = PartNumber.Substring(0, 2);
                            string part2        = string.Format(CultureInfo.InvariantCulture, "{0:X02}", Address);
                            string baseNameTest = part1 + "-" + part2;
                            if (IndexSubSys.HasValue)
                            {
                                string part3 = string.Format(CultureInfo.InvariantCulture, "{0:X02}", IndexSubSys.Value + 1);
                                baseNameTest += "-" + part3;
                            }

                            string fileName = Path.Combine(subDir, baseNameTest.ToLowerInvariant() + FileExtension);
                            if (File.Exists(fileName))
                            {
                                redirectFile = true;
                                return(fileName);
                            }
                        }
                    }
                }
                catch (Exception)
                {
                    return(null);
                }

                return(null);
            }
コード例 #2
0
            private string ResolveFileName(List <string> dirList)
            {
                try
                {
                    foreach (string subDir in dirList)
                    {
                        string fileName = Path.Combine(subDir, _fullName.ToLowerInvariant() + FileExtension);
                        if (File.Exists(fileName))
                        {
                            return(fileName);
                        }

                        fileName = Path.Combine(subDir, _baseName.ToLowerInvariant() + FileExtension);
                        if (File.Exists(fileName))
                        {
                            return(fileName);
                        }
                    }

                    foreach (string subDir in dirList)
                    {
                        string part1    = PartNumber.Substring(0, 2);
                        string part2    = string.Format(CultureInfo.InvariantCulture, "{0:00}", Address);
                        string baseName = part1 + "-" + part2;

                        string fileName = Path.Combine(subDir, baseName.ToLowerInvariant() + FileExtension);
                        if (File.Exists(fileName))
                        {
                            return(fileName);
                        }
                    }
                }
                catch (Exception)
                {
                    return(null);
                }

                return(null);
            }