C# 替换文本文件中的某一行 (要求此文件存在)
2013-05-21 21:32
399 查看
/// <summary> /// LineIndex 表示新的内容所在的行位置 /// </summary> /// <param name="sFileName"></param> /// <param name="sOrigionContent"></param> /// <param name="sNewLineContent"></param> /// <param name="LineIndex"></param> public static void SaveTxtReplaceOneLine(string sFileName, string sOrigionContent, string sNewLineContent, int iNewLineIndex) { try { StringBuilder sbNewSave = new StringBuilder(); sFileName = sFileName.Replace("|", "_"); string sFolder = Directory.GetParent(sFileName).ToString(); if (!System.IO.Directory.Exists(sFolder)) { System.IO.Directory.CreateDirectory(sFolder); } if (!System.IO.File.Exists(sFileName)) { throw new Exception("file not exist"); } string[] arrLine = sOrigionContent.Trim().Split(Convert.ToChar(Keys.Return)); for (int i = 0; i < iNewLineIndex; i++) { sbNewSave.AppendLine(arrLine[i].Trim('\r').Trim('\n')); } sbNewSave.AppendLine(sNewLineContent); for (int i = iNewLineIndex + 1; i < arrLine.Length; i++) { sbNewSave.AppendLine(arrLine[i].Trim('\r').Trim('\n')); } FileStream fsTxtWrite = new FileStream(sFileName, FileMode.Create, FileAccess.Write); StreamWriter srWrite = new StreamWriter(fsTxtWrite, System.Text.Encoding.UTF8); //StreamWriter srWrite = new StreamWriter(fsTxtWrite, System.Text.Encoding.Default); srWrite.Write(sbNewSave.ToString().Trim()); srWrite.Close(); srWrite.Dispose(); fsTxtWrite.Dispose(); } catch (Exception ex) { //MessageBox.Show(ex.Message); #region ### error info try { string sFolder = Directory.GetParent(sFileName).ToString(); string sErrFullName = sFolder + "_err_" + System.DateTime.Now.ToString("yyyyMMddHHmmss") + ".txt"; if (!System.IO.File.Exists(sErrFullName)) { FileStream fs; fs = File.Create(sErrFullName); StreamWriter srWrite = new StreamWriter(fs, System.Text.Encoding.UTF8); srWrite.Write(sFileName); srWrite.Close(); srWrite.Dispose(); fs.Close(); } } catch (Exception ex2) { } #endregion ###error } }
相关文章推荐
- C# 替换文本文件中的某一行 (要求此文件存在)
- C# 替换文本文件中的某一行
- 插入替换删除文本文件中的某一行
- 要求通过java读取文本并把文本中的每一行后面的三个成绩相加, 最后按从大到小的顺序输出到另一个文本文件中.
- 使用C#替换文本文件中的指定字符
- C#批量替换文本文件内容的核心代码
- C#删除文本文档的任意一行数据
- 用cmd在一个文本文件中的每一行后添加相同的字符
- C# 正则替换文本为超链接
- C#文件替换助手
- c#检查网络文件是否存在
- C#判断文件及文件夹是否存在并创建(C#判断文件夹存在)
- 将两个文件记录合并,每条记录占用一行,要求删除重复行,合并行并对其排序。
- 【C#】对文本、图片、音频文件的读取与写入
- C#简单实现读取txt文本文件并分页存储到数组
- ASP.net 2.0 C#判断文件夹与文件是否存在
- Linux Shell中删除和替换文件中某一行的方法
- C#之中的字符串替换方法以及判断是否存在特定子字符串
- C# 实现文件文本的正则表达式查询
- 显示文本文件最后一行内容