Neste código teremos como alterar um arquivo .RTF e depois iremos salvar um novo arquivo .RTF.
Para este caso mudaremos os textos que atualiza a Data Atual: , , através de (StreamReader e StreamWriter).
protected void BtnGerar_Click(object sender, EventArgs e) { try { using (StreamReader sr = new StreamReader(Server.MapPath("Doc/Documento.rtf"))) { string line; string Texto = ""; //Recupera Data Atual string dia = DateTime.Now.Day.ToString(); string mes = DateTime.Now.Month.ToString(); string lstrmes = RetornaMes(mes); string ano = DateTime.Now.Year.ToString(); while ((line = sr.ReadLine()) != null) { Texto += line.Replace("", ano).Replace(" ", lstrmes).Replace(" ", dia); } string path = Server.MapPath("Doc/Documento2.rtf"); if (File.Exists(path)) { File.Delete(path); } if (!File.Exists(path)) { using (StreamWriter sw = File.CreateText(path)) { sw.WriteLine(Texto); } } } //Abre o novo arquivo .RTF criado Response.Redirect("Doc/Documento2.rtf"); } catch (Exception ex) { throw new Exception(ex.Message); } } //Método que retorna o mês Atual private string RetornaMes(string mesAno) { switch (mesAno) { case "1": mesAno = "Janeiro"; break; case "2": mesAno = "Fevereiro"; break; case "3": mesAno = "Março"; break; case "4": mesAno = "Abril"; break; case "5": mesAno = "Maio"; break; case "6": mesAno = "Junho"; break; case "7": mesAno = "Julho"; break; case "8": mesAno = "Agosto"; break; case "9": mesAno = "Setembro"; break; case "10": mesAno = "Outubro"; break; case "11": mesAno = "Novembro"; break; case "12": mesAno = "Dezembro"; break; default: break; } return mesAno; }