首页 > 编程语言 >C# 文件的第一行最后一行添加内容

C# 文件的第一行最后一行添加内容

时间:2022-12-10 11:00:47浏览次数:62  
标签:第一行 string C# sw prefix 添加 new IsNullOrEmpty suffix

static void AddFileFix(string fileFullName, string prefix, string suffix)
{
try
{
if (string.IsNullOrEmpty(prefix) && string.IsNullOrEmpty(suffix))
{
return;
}

if (string.IsNullOrEmpty(prefix) && !string.IsNullOrEmpty(suffix))
{
FileStream fs_a = new FileStream(fileFullName, FileMode.Append);
StreamWriter sw_a = new StreamWriter(fs_a);
sw_a.Write(suffix);
sw_a.Close();
fs_a.Close();
return;
}

char[] buffer = new char[10000];

string renamedFile = fileFullName + ".orig";
File.Move(fileFullName, renamedFile);

using (StreamReader sr = new StreamReader(renamedFile))
using (StreamWriter sw = new StreamWriter(fileFullName, false))
{
if (!string.IsNullOrEmpty(prefix))
sw.Write(prefix);

int read;
while ((read = sr.Read(buffer, 0, buffer.Length)) > 0)
sw.Write(buffer, 0, read);

if (!string.IsNullOrEmpty(suffix))
sw.Write(suffix);
}

File.Delete(renamedFile);
}
catch (Exception ex)
{
throw ex;
}
}

参考:

​https://qa.1r1g.com/sf/ask/70611971/​



标签:第一行,string,C#,sw,prefix,添加,new,IsNullOrEmpty,suffix
From: https://blog.51cto.com/u_15698411/5927321

相关文章

  • C# short 寄存器 16位 高低位反转
    privateshortReversalHighLowByte(shortval){byte[]arrSrc=BitConverter.GetBytes(val);byte[]arrDst=newbyte[arrSrc.Length];arrDst[0]=arrSrc[1......
  • JavaScript入门⑩-ES6归纳总结
    JavaScript入门系列目录JavaScript入门①-基础知识筑基JavaScript入门②-函数(1)基础{浅出}JavaScript入门③-函数(2)原理{深入}执行上下文JavaScript入门④-万物皆......
  • Qt QScroller::grabGesture(ui->scrollArea, QScroller::TouchGesture),之后滚动条无法
    RT。问题发生原因因为设置了touchGesture,而scrollArea的滚动条是包含在scrollArea里面的,用手指滑动滚动条的同时,也触发了touchGesture,两个冲突了。 解决思路:重新n......
  • C++手机运动信息管理系统
    C++手机运动信息管理系统《程序设计基本能力综合实训》实训案例名称:手机运动信息管理系统-----说明文档本案例主要完成手机运动信息的管理。主要功能包括:用户信息的......
  • ASP.NET Core在IIS运行时直接更新程序的办法
    问题.NET程序在运行时会锁定DLL等文件,因此如果我们有新版网站应用程序要替换在运行中的版本的时候,操作系统会提示文件被占用,从而无法完成替换。解决办法编写一个内容包......
  • 下载fetch
    fetch(url).then(res=>res.blob()).then(blob=>{consta=document.createElement('a')document.body.appendChild(a)a.style.display='none'constur......
  • CF702F T-Shirts
    \(\mathcalLink\)可以发现,所选物品的优先级是固定的,因此考虑先对物品排序。发现难以优化对单个人的处理,由于询问不相互影响,因此考虑离线处理所有询问。每加入一件物品,......
  • k8s初始化报错[kubelet-check] Initial timeout of 40s passed.
    k8s初始化报错[kubelet-check]Initialtimeoutof40spassed.k8s.gcr.io/pause:3.6Thekubeletisunhealthyduetoamisconfigurationofthenodeinsomeway(re......
  • SAK-TC364DP-64F300W AA汽车MCU、SAK-TC375TP-96F300W AA特点概述
    1、SAK-TC364DP-64F300WAA汽车32位微控制器MCU封装:LQFP144批次:新年份说明:SAK-TC364DP-64F300WAA属于AURIX™TC36xDP家族。AURIX™第二代(TC3xx)在性能、内存大小、连接......
  • 【Docker学习教程系列】8-如何将本地的Docker镜像发布到私服?
    通过前面的学习,我们已经知道,怎么将本地自己制作的镜像发布到阿里云远程镜像仓库中去。但是在实际工作开发中,一般,我们都是将公司的镜像发布到公司自己搭建的私服镜像仓库中,......