原文:https://blog.csdn.net/qq_41209575/article/details/89178020

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.代码部分
File类常用方法
 

3.文件流

3.1文件流文字形式读取

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

3.3文件流视频形式复制

 byte[] bytsize = new byte[ *  * ];
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, , bytsize.Length);
//当字节位0的时候 证明已经读取结束
if(r==){
break;
}
fswrite.Write(bytsize,,r); } } }
 

最新文章

  1. functools模块
  2. OpenCV2:Mat
  3. mysql 分表
  4. arcgis制作兴趣点分布图
  5. MVVM架构~knockoutjs系列之从Knockout.Validation.js源码中学习它的用法
  6. jQuery构造函数init参数分析(二)
  7. javascript优化--05模式(函数)
  8. apache 日志为每个域名独立配置单独的日志文件
  9. c++时间处理
  10. 【LeetCode】204 - Count Primes
  11. 【C++基础】 指针&字符串&数组
  12. IOS 手绘地图导航
  13. OAuth2集成——《跟我学Shiro》
  14. 注册界面的优化之ActionBar组件的应用之(二)ActionBar组件的事件处理
  15. RunLoop想入门,看这篇就够了
  16. directive
  17. Servlet(2)—java项目下web应用程序
  18. Navie level questions
  19. Python学习的路上,Anaconda送你一双遮天神翼
  20. 编写第一个H5页面

热门文章

  1. HTML中的marquee标签实现滚动效果
  2. VS2015编译问题:模块对于 SAFESEH 映像是不安全的
  3. sh_01_hello
  4. C# 很久以前几个常用类
  5. CF1012F Passports
  6. IDEA插件之自动查找bug工具
  7. JavaScript异步编程助手:Promise模式
  8. JS判断Android、iOS或浏览器的多种方法(四种方法)
  9. 取得所有网卡的MAC地址,包括禁用的
  10. PowerDesigner相关总结