using System; namespace DTLib.Filesystem { // // некоторые старые методы, которые хорошо бы вырезать // public static class OldFilework { // записывает текст в файл и закрывает файл public static void LogToFile(string logfile, string msg) { lock (new object()) { File.AppendAllText(logfile, msg); } } // чтение параметров из конфига public static string ReadFromConfig(string configfile, string key) { lock (new object()) { key += ": "; using var reader = new System.IO.StreamReader(configfile); while (!reader.EndOfStream) { string st = reader.ReadLine(); if (st.StartsWith(key)) { string value = ""; for (int i = key.Length; i < st.Length; i++) { if (st[i] == '#') return value; if (st[i] == '%') { bool stop = false; string placeholder = ""; i++; while (!stop) { if (st[i] == '%') { stop = true; value += ReadFromConfig(configfile, placeholder); } else { placeholder += st[i]; i++; } } } else value += st[i]; } reader.Close(); //if (value == "") throw new System.Exception($"ReadFromConfig({configfile}, {key}) error: key not found"); return value; } } reader.Close(); throw new Exception($"ReadFromConfig({configfile}, {key}) error: key not found"); } } } }