title: How to replace only 1 columns in 1 rows of list?
body: <p>I read all line from file text into List&lt;>.</p>
  
  <p>But I have a problem. I want to change only 1 element(is columns) in 1 rows of file text.</p>
  
  <p>When I send Email successful, it will update time in this line I checking.</p>
  
  <p>This data in file text</p>
  
  <pre><code>    User1             abc@gmail.com           5/1/2016
  
  // many rows.....
  </code></pre>
  
  <p>After SendEmail successful it's will update like:</p>
  
  <pre><code>User1             abc@gmail.com           8/1/2016
  </code></pre>
  
  <p>Current, I must use AppendAllLine() function to add line:</p>
  
  <pre><code>File.AppendAllLines(dataPath, (from i in Items select i.Serialize()).ToArray(), Encoding.Default);
  </code></pre>
  
  <p>I tried StreamWriter but it does not support like:</p>
  
  <pre><code>from i in Items select i.Serialize()).ToArray()
  </code></pre>
  
  <p>Here my code to update time.</p>
  
  <pre><code>if (time.Day == today.Day)
  {
      flag = SendMail.sendDailyMail(listMail);
      if (flag == true)
      {
          rows.time = timeNow;
          List&lt;DTOSaveFromFile&gt; lst = new List&lt;DTOSaveFromFile&gt;(1);
          lst.Add(rows);
          DiskFile.Save(lst);
      }
  }
  </code></pre>
  
  <p>Class DiskFile:</p>
  
  <pre><code>public static void Save(List&lt;DTOSaveFromFile&gt; Items)
  {
      File.AppendAllLines(dataPath, (from i in Items select i.Serialize()).ToArray(), Encoding.Default);
  }
  
  public static List&lt;DTOSaveFromFile&gt; Load()
  {
      string[] data = File.ReadAllLines(dataPath);
      return (from i in data select new DTOSaveFromFile(i)).ToList&lt;DTOSaveFromFile&gt;();
  }
  </code></pre>