当前位置: 首页 > news >正文

c# 保存文件 - 先保存到临时文件,保存成功后修改文件名

public static class FileSafeWrite{public static void WriteAllTextAtomically(string filePath, string content){// 定义临时文件路径string tempFilePath = filePath + ".tmp";try{// 将内容写入临时文件using (var streamWriter = new StreamWriter(tempFilePath, append: false)){streamWriter.Write(content);streamWriter.Flush(); // 将缓冲区数据刷到操作系统}// 替换原始文件if (File.Exists(filePath)){File.Replace(tempFilePath, filePath, null);}else{File.Move(tempFilePath, filePath);}}catch{//尝试清理临时文件if (File.Exists(tempFilePath)){try { File.Delete(tempFilePath); } catch { /* 忽略清理错误 */ }}throw; // 重新抛出原始异常}}}
http://www.hskmm.com/?act=detail&tid=13409

相关文章:

  • 达芬奇标记测量线文字标题动画预设(Tracked Measuring Lines)使用指南
  • 20250427_信安一把梭_No11
  • 运营商数据分类分级:最佳实践、典型案例与智能化方案
  • AT_abc413_g [ABC413G] Big Banned Grid
  • .NET性能优化-使用RecyclableBuffer取代RecyclableMemoryStream
  • css样式:button边框贪吃蛇加载效果
  • 什么是NIC(网络接口卡)?
  • 汽车行业相关技术及其分类
  • 视频剪辑效率翻倍!CyberLink PowerDirector 从入门到专业的全能解决方案
  • 20250415_信安一把梭_encode
  • 日常练习另一部分
  • 每天一个安卓测试开发小知识之 (六)---常用的adb 命令第四期
  • SAP-ABAP中STOP,EXIT,CHECK,RETURN,CONTINUE,LEAVE,REJECT的区别
  • Linux开机启动进入紧急模式emergency mode的解决方法 - 规格严格
  • Arduino ide 软件 不建议大家使用 缺点多多
  • 视频融合平台EasyCVR国标GB28181视频诊断功能详解与实践
  • Refit Consul
  • 故障处理:Oracle 19.20未知BUG导致oraagent进程内存泄漏的案例处理
  • 麒麟服务器操作系统查询可用的内核版本以及安装和降级命令
  • esp32 stm32 ros2 三者区别
  • 20250406_信安一把梭_测试篇
  • 前端 10 个 JS 神 API,开箱即用
  • 故障处理:清除 DBA_DATAPUMP_JOBS 视图中的异常数据泵作业
  • Web自动化测试智能体详解
  • Queue 配合Thread使用
  • MyEMS 进阶应用:从单厂能耗管理到集团跨区域能源数据协同分析
  • Playwright自动化测试框架与AI智能体应用
  • 以下内容在if判定的时候会被判定为 假
  • Python __init__.py文件
  • 20250330_信安一把梭_考试篇