首页 > 编程语言 >C# 写入文件流

C# 写入文件流

时间:2022-10-10 11:47:48浏览次数:57  
标签:文件 directoryName filePath C# 写入 source data string

 1 /// <summary>
 2 /// 写入文件流
 3 /// </summary>
 4 /// <param name="filePath">文件路径(包括文件名和后缀)</param>
 5 /// <param name="data">要存储的数据</param>
 6 public static void WriteFileStream(string filePath, byte[] data)
 7 {
 8     Stream source = null;
 9     try
10     {
11         // 判断文件夹是否存在
12         string directoryName = Path.GetDirectoryName(filePath);
13         if (!string.IsNullOrEmpty(directoryName))
14         {
15             if (!Directory.Exists(directoryName))
16             {
17                 Directory.CreateDirectory(directoryName);
18             }
19         }
20         // 覆盖文件
21         if (File.Exists(filePath))
22         {
23             File.Delete(filePath);
24         }
25         // 写入文件
26         source = new FileStream(filePath, FileMode.Create);
27         source.Write(data, 0, data.Length);
28     }
29     catch (Exception)
30     {
31         throw;
32     }
33     finally
34     {
35         if (source != null)
36         {
37             source.Close();
38         }
39     }
40 }

 

标签:文件,directoryName,filePath,C#,写入,source,data,string
From: https://www.cnblogs.com/smartnn/p/16775095.html

相关文章

  • php中header函数参数的Cache-control的使用方法
    网页的缓存是由HTTP消息头中的“Cache-control”来控制的,常见的取值有private、no-cache、max-age、must-revalidate等,默认为private。其作用根据不同的重新浏览方式分为......
  • acwing.第72场周赛 t3最小移动距离
    AcWing4626.最小移动距离原题链接:https://www.acwing.com/problem/content/4629/思路要求对于每一个点x都满足走过t,到达一个目标点y.并且x和y都可以互为目标点。找出......
  • Docker学习(二)常用命令
    一、帮助启动类命令启动docker:systemctlstartdocker停止docker:systemctlstopdocker重启docker:systemctlrestartdocker查看docker状态:systemctlstatusdocker......
  • Java-Day04 Scanner/if-else/switch-case/for
    2022/10/9一、Scanner:从键盘获取数据1.要使用Scanner首先需要导入包:importjava.util.Scanner;2.使用方法:Scanner变量名=newScanner(System.in);/......
  • C# 获取本地IP地址
    1///<summary>2///获取本地的IP地址3///</summary>4///<returns></returns>5publicstaticstringGetAddressIP()6{7stringAddressIP=st......
  • CentOS 配置免密登录
    1、跳板机操作:连续三次回车,生成私钥和密钥ssh-keygen-trsa 2、ssh-copy-id-i/root/.ssh/id_rsa.pub192.168.1.100//依次输入yes,123456(root用户的密码)ssh-......
  • MyBatis之ResultMap的association和collection标签详解
    一、前言MyBatis创建时的一个思想是:数据库不可能永远是你所想或所需的那个样子。我们希望每个数据库都具备良好的第三范式或BCNF范式,可惜它们并不都是那样。如果能有一......
  • SAP UI5 Tools 的 Custom UI5 Server Middleware 介绍
    UI5服务器可扩展性(Extensibility)使开发人员能够增强UI5服务器的功能。开发人员可能希望以不同的方式处理请求。例如,将各种标头添加到响应中(一个最典型的应用就是避......
  • 如何实现汇川PLC和工业机器人的协议解析与数据采集?
    汇川是一家专注于工业自动化的设备制造商,具备一整套完善的产品与服务,涉及变频器、伺服系统、PLC、HMI触摸屏、电动汽车电机控制器、光伏逆变器等等,在制造业、新能源、环保节......
  • v2.2发布,CNC Fanuc、QnA 1E驱动即将到来
    九月,我们发布了Neuron2.2。该版本增加了一系列新驱动以及新特性:新增BeckhoffADS、OPCDA、NONA11驱动,统一了HTTP服务对外暴露的端口。此外,本月我们专注于数据统计以......