/// <summary> /// </summary> public string ParseVar(string line) { foreach (string s in vars.Keys) { line = line.Replace(s, vars[s].Value); } if (other != null) { return(other.ParseVar(line)); } return(line); }
/// <summary> /// </summary> public static string ReadLine(StreamReader sr, VarCollection vars) { string line = ""; while (true) { do // get a good line - not a comment or empty string { if (sr.Peek() != -1) { line = sr.ReadLine().Trim(); } else { return(null); } }while (line.Length == 0 || line[0] == '#'); if (line[0] == '$') // cache variable, get another line { int idx = line.IndexOf(Separator); string var = line.Substring(0, idx); string val = line.Substring(idx + 1); vars[var] = val; } else // got a line { break; } } if (line.IndexOf("$") > 0) // replace any variables the line might have { line = vars.ParseVar(line); } return(line); }
public static string ReadLine(StreamReader sr, VarCollection vars) { string line = ""; while (true) { do //get a good line - not a comment or empty string { if (sr.Peek() != -1) line = sr.ReadLine().Trim(); else return null; } while (line.Length == 0 || line[0] == '#'); if (line[0] == '$') //cache variable, get another line { int idx = line.IndexOf(Separator); string var = line.Substring(0, idx); string val = line.Substring(idx + 1); vars[var] = val; } else //got a line break; } if (line.IndexOf("$") > 0) //replace any variables the line might have line = vars.ParseVar(line); return line; }