File与FileStream怎么在C#中使用

发布时间:2021-01-11 16:28:38 作者:Leah
来源:亿速云 阅读:194

今天就跟大家聊聊有关File与FileStream怎么在C#中使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

1.首先先介绍File类和FileStream文件流

1.1  File类,是一个静态类,支持对文件的基本操作,包括创建,拷贝,移动,删除和打开一个文件。File类方法的参量很多时候都是路径path。主要提供有关文件的各种操作,在使用时需要引用System.IO命名空间。

 1.2  FileStream文件流 只能处理原始字节(raw byte)。FileStream 类可以用于任何数据文件,而不仅仅是文本文件。FileStream 对象可以用于读取诸如图像和声音的文件,FileStream读取出来的是字节数组,然后通过编码转换将字节数组转换成字符串。

1.3 区别:file:是一个文件的类,对文件进行操作的;filestream:文件流.对txt,xml等文件写入内容的时候需要使用的一个工具.打个形象的比喻.file是笔记本,需要filestream的这个笔才能写.

2.代码部分

2.1 File类创建Txt

 string path = @"C:\Users\Administrator\Desktop\1.txt";
 File.Open(path, FileMode.OpenOrCreate);

2.2 File类Txt拼接内容

 List<string> users = new List<string>();
   users.Add("张三|1000");
   users.Add("李四|10000");
   users.Add("王五|5000");
   users.Add("赵六|6000");
    File.AppendAllLines(path, users, Encoding.Default);

2.3  File类字节形式读取txt文档

byte[] buttf = File.ReadAllBytes(path);
string str = Encoding.Default.GetString(buttf, 0, buttf.Length);

2.4 File类实现txt员工工资加倍

 string[] filestr = File.ReadAllLines(path, Encoding.Default);
 for (int i = 0; i < filestr.Length; i++)
  {
  string[] str = filestr[i].Split('|');
  filestr[i] = str[0] + "|" + (Convert.ToDouble(str[1]) * 2).ToString();
  }
  File.AppendAllLines(path, filestr, Encoding.Default);

2.5 File类常用方法

File与FileStream怎么在C#中使用

3.文件流

3.1文件流文字形式读取

 byte[] bytsize = new byte[1024 * 1024 * 5];
   using (FileStream stream = new FileStream(path, FileMode.OpenOrCreate,FileAccess.ReadWrite))
   {
    while (true)
    {
     int r = stream.Read(bytsize, 0, bytsize.Length);
     //如果读取到的字节数为0,说明已到达文件结尾,则退出while循
     if (r == 0)
     {
      break;
     }
 
     string str = Encoding.Default.GetString(bytsize, 0, r);
     Console.WriteLine(str);
    }
   }

3.2文件流文字形式写入

 string str = "今天天气好晴朗,处处好风光";
   byte[] buttf = Encoding.Default.GetBytes(str);
   //文件流的写入
   using (FileStream fscreat = new FileStream(path, FileMode.Append, FileAccess.Write))
   {
 
    fscreat.Write(buttf, 0, buttf.Length);
   }

3.3文件流视频形式复制

 byte[] bytsize = new byte[1024 * 1024 * 5];  
string videoPath = @"C:\Users\Administrator\Desktop\1、练习1-3.avi";
   string videoNewPath = @"C:\Users\Administrator\Desktop\1.avi";
   //创建读取流
   using (FileStream fsread=new FileStream(videoPath,FileMode.Open,FileAccess.Read))
   {
    //创建写入流
    using (FileStream fswrite=new FileStream(videoNewPath,FileMode.OpenOrCreate,FileAccess.Write))
    {
      while (true)
     {
     //返回实际读取到的字节
     int r = fsread.Read(bytsize, 0, bytsize.Length);
     //当字节位0的时候 证明已经读取结束
     if(r==0){
      break;
     }
     fswrite.Write(bytsize,0,r);
 
    }
    }
    
   }

看完上述内容,你们对File与FileStream怎么在C#中使用有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。

推荐阅读:
  1. C#中FileStream类的详细解析
  2. C#中FileStream的对比及使用方法

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

file filestream

上一篇:postgresql修改端口后使用psql连接数据库出现报错如何解决

下一篇:怎么在c#中通过发送请求访问外部接口

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》