C# GetPrivateProfileString Function Implementation: Reading INI Files Without Using 'using'
public string GetPrivateProfileString(string lpAppName, string lpKeyName, string lpDefault, string lpFileName) { string path = Path.GetFullPath(lpFileName); if (!File.Exists(path)) { return lpDefault; } string value = lpDefault; StreamReader sr = null; try { sr = new StreamReader(path, Encoding.Default); string line; while ((line = sr.ReadLine()) != null) { if (line.StartsWith(';') || line.StartsWith('#')) { continue; } if (line.StartsWith('[') && line.EndsWith(']')) { string section = line.Substring(1, line.Length - 2); if (section.Equals(lpAppName, StringComparison.OrdinalIgnoreCase)) { while ((line = sr.ReadLine()) != null) { if (line.StartsWith(';') || line.StartsWith('#')) { continue; } int index = line.IndexOf('='); if (index >= 0) { string key = line.Substring(0, index).Trim(); string val = line.Substring(index + 1).Trim(); if (key.Equals(lpKeyName, StringComparison.OrdinalIgnoreCase)) { value = val; break; } } } break; } } } } catch (Exception ex) { value = lpDefault; } finally { if (sr != null) { sr.Close(); } } return value; }
原文地址: https://www.cveoy.top/t/topic/mkSF 著作权归作者所有。请勿转载和采集!