c# - Write to a text file after specified string? -


my code

dictionary<string,string> members = new dictionary<string,string>(); //.. initialization of dictionary                  using (streamwriter file = new streamwriter(pathtofile))                     foreach (var entry in members)                         file.writeline("[{0} {1}]", entry.key, entry.value); 

i need write stuff after first specified string present in file "teststring". how can done easily?

do need insert data in middle of file (i.e. quote: "write stuff after first specified string present in file")?

dictionary<string, string> members = new dictionary<string, string>();  string linetofind = "teststring";  // let's read file in order avoid read/write conflicts var data = file   .readlines(pathtofile)   .tolist();  var before = data   .takewhile(line => line != linetofind)   .concat(new string[] {linetofind}); // add linetofind  var after = data   .skipwhile(line => line != linetofind)   .skip(1); // skip linetofind  var stuff = members   .select(entry => string.format("[{0} {1}]", entry.key, entry.value));  file.writealllines(pathtofile, before   .concat(stuff)   .concat(after)); 

Comments