프로그래밍/C#
sample #2 .. No 2
mi-nos
2025. 5. 31. 23:53
VARIABLE.TXT
id#100a
data#data0001
STATE.TXT
create#action#http://127.0.0.1:8011/create#id
add#action#http://127.0.0.1:8012/add#id,data
fetch#action#http://127.0.0.1:8013/fetch#
const string cStateFile = "STATE.TXT"; const string cVariableFile = "VARIABLE.TXT"; static void Main(string[] args) { Dictionary<string, string> Variable = new Dictionary<string, string>(); Dictionary<string, string> State = new Dictionary<string, string>(); // Variable 파싱 foreach (var line in File.ReadAllLines(cVariableFile)) { var str = line.Split('#'); var name = str[0]; var value = str[1]; Variable[name] = value; } // State 파싱 foreach (var line in File.ReadAllLines(cStateFile)) { var str = line.Split('#'); var name = str[0]; var action = str[1]; var url = str[2]; var vars = str[3].Split(',').ToList(); if (vars[0] == "") vars.Clear(); // Parameter 없는 경우 clear var query = vars.Select(t => t += "=" + Variable[t]); if (vars.Count > 0) { State[name] = action + " " + url + "?" + string.Join("&", query); } else { State[name] = action + " " + url; } } string cmd; while ((cmd = Console.ReadLine()) != null) { Console.WriteLine(State[cmd]); } |