zoukankan      html  css  js  c++  java
  • FileStream文件的使用

               // FileStream//(操作字节的)水一勺一勺的 可以操作任意格式的文件
               //File一下子就读出来

      //读取文本文件

     1           // FileMode.OpenOrCreate你针对文件进行一个什么操作
     2             //FileAccess .Read 文件数据参数
     3             //1.创建FileStream对象
     4             FileStream fileRead = new FileStream(@"C:UserswbrmDesktop新建文本文档.txt", FileMode.OpenOrCreate, FileAccess.Read);
     5             byte[] buffer = new byte[1024 * 1024 * 5];
     6             int r = fileRead.Read(buffer, 0, buffer.Length);   // 0表示从那个字节读取数据   // buffer.Length 读取的大小
     7             //将字节数组中的每一个元素安照知道的编码格式解码成字符串
     8             string s = Encoding.Default.GetString(buffer, 0, r);
     9             fileRead.Close();   // //关闭流     
    10             fileRead.Dispose(); // //释放流所占用的资源
    11             Console.WriteLine(s);
    12             Console.ReadKey();

       写入文本文件

     1             //写入的编码格式和读的编码格式必须一样
     2             //将创建的文件流对象的过程在Using当中,会自动的帮助我们释放所占用的空间
     3             using (FileStream fswrite = new FileStream(@"C:UserswbrmDesktop新建文本文档 (2).txt", FileMode.OpenOrCreate, FileAccess.Write))
     4             {
     5                 string str = "看我有没有把你覆盖掉";
     6                 byte[] buffer = Encoding.Default.GetBytes(str);//转换成字节数组
     7                 fswrite.Write(buffer, 0, buffer.Length);
     8             }
     9             Console.WriteLine("写入成功");
    10             Console.ReadKey();

     使用文件流实现多媒体文件文件的复制

     1  static void Main(string[] args)
     2         {
     3             //思路:先将要复制的多媒体文件读取出来然后在再写到你的指定位置
     4             string courece = @"C:UserswbrmDesktopfor循环的练习.avi";
     5             string target = @"C:UserswbrmDesktop新的.avi";
     6             CopyFile(courece, target);
     7             Console.WriteLine("复制成功");
     8             Console.ReadKey();
     9         }
    10         public static void CopyFile(string courece, string target)
    11         {
    12             //读取流
    13             using (FileStream fsRead = new FileStream(courece, FileMode.OpenOrCreate, FileAccess.Read))
    14             {
    15                //写入流
    16                 using (FileStream fsWrite = new FileStream(target, FileMode.OpenOrCreate, FileAccess.Write))  
    17                 {                   
    18                     byte[] buffer = new byte[1024 * 1024 * 5];
    19                     //因为文件可能会比较大,所以我们在读取的时候,应该通过一个循环去读取
    20                     while (true)
    21                     {
    22                         //返回本次读取实际读取的字节数
    23                         int r = fsRead.Read(buffer, 0, buffer.Length);
    24                         //如果返回一个0,也就意味什么都没有读取到,读取完了
    25                         if(r==0)
    26                         {
    27                             break;
    28                         }
    29                         fsWrite.Write(buffer, 0,r);//最多写入的字节r
    30                     }
    31                 }
    32             }
    33         }
  • 相关阅读:
    使用Chrome开发者工具研究JavaScript的垃圾回收机制
    Java JDK目录下的jmap和jhat工具的使用方式
    Java注解@Cacheable的工作原理
    使用Java JUnit框架里的@Rule注解的用法举例
    使用Java JUnit框架里的@SuiteClasses注解管理测试用例
    Java JUnit框架里@Category注解的工作原理
    使用SAP CRM mock框架进行单元测试的设计
    将ABAP透明表的定义(元数据)解析出来导入到剪切板(clipboard)里
    SAP ABAP Netweaver里的胖接口(fat interface)
    关于STM32的FLASH操作【转载】
  • 原文地址:https://www.cnblogs.com/enduo/p/7787749.html
Copyright © 2011-2022 走看看