在.net中有很多有用的类库来读写硬盘上的文件 一般比较常用的有:

File:1.什么时候使用:当读写件大小不大,同时可以一次性进行读写操作的时候使用
         2.不同的方式可以读写文件类型不一样。

ReadAllBytes()  WriteAllByte():可以读写任意类型的文件 (里面封装的是FileStream)
           ReadAllLines()  ReadAllText():(里面封装是StreamWriter,StreamReader),只能读写文本类型文件

FileStream:
         1.当读写大文件的时候使用,它可以自定义读写的数组大小
         2.一个流只能做一个事情:如果需要读和写那么就需要创建两个流
         3.读取:将数据读取到数组  写入是将数组的数据再写入到文件(类型转换)

使用FileStream类的读写一部电影例子代码:

   //读取
using (FileStream fsRead = new FileStream(@"F:\苍老师.avi", FileMode.Open))
{
using (FileStream fsWrite = new FileStream(@"d:\学习.avi", FileMode.Create))
{
//自定义数组的长度
byte[] bytes = new byte[];
//当没有读取到文件的末尾的时候就需要循环读取
while (fsRead.Position < fsRead.Length)
{
//读取的时候position属性会自动变化,记住当前读取到的位置,以字节为单位
//count可以获取当前具体读取到的字节数
int count = fsRead.Read(bytes, , bytes.Length);
if (count == )
{
break;
}
//写入
fsWrite.Write(bytes, , count); //只需要写入读取到的字节数就可以了
}
}
MessageBox.Show("ok");
}

StreamReader/StreamWrite:
       1.只能对文本文件进行读写操作
       2.它可以按行进行读取和写入

.net学习笔记--文件读写的几种方式的更多相关文章

  1. Java学习笔记-文件读写和Json数组

    Java文件读写 Java中I/O流对文件的读写有很多种方法,百度后主要看了以下三种 第一种方式:使用FileWriter和FileReader,对文件内容按字符读取,代码如下 String dir ...

  2. java文件读写的两种方式

    今天搞了下java文件的读写,自己也总结了一下,但是不全,只有两种方式,先直接看代码: public static void main(String[] args) throws IOExceptio ...

  3. SQLite3学习笔记----创建数据库的两种方式

    今天研究学习SQLite,刚开始创建数据库,就遇到了一个坑,是自己粗心了,特记录一下. 实验环境: OS:Ubuntu18.04 创建数据库名称:test.db 实验步骤: 1.检查是否已经安装了SQ ...

  4. java 学习笔记 读取配置文件的三种方式

    package com.itheima.servlet.cfg; import java.io.FileInputStream; import java.io.FileNotFoundExceptio ...

  5. Java学习笔记——显示当前日期的三种方式

    一.Date类:这是一种过时的表达方式 import java.util.Date; Date date = new Date(); System.out.println((1900+date.get ...

  6. python 学习笔记(二)两种方式实现第一个python程序

    在交互模式下: 如果要让Python打印出指定的文字,可以用print语句,然后把希望打印的文字用单引号或者双引号括起来,但不能混用单引号和双引号: >>> print 'hello ...

  7. python对csv文件读写的两种方式 和 读写文件编码问题处理

    ''' 如果文件读取数据出错,可以考虑加一个encoding属性,取值可以是:utf-8,gbk,gb18030 或者加一个属性error,取值为ignore,例如 open(path, encodi ...

  8. python学习之文件读写入门(文件读的几种方式比较)

    1.文件读写简单实例:(以w写的方式打开一个文件,以r读一个文件) # Author : xiajinqi # 文件读写的几种方式 # 文件读写 f = open("D://test.txt ...

  9. 《python基础教程(第二版)》学习笔记 文件和素材(第11章)

    <python基础教程(第二版)>学习笔记 文件和素材(第11章) 打开文件:open(filename[,mode[,buffering]]) mode是读写文件的模式f=open(r' ...

随机推荐

  1. loaded the "ViewController" nib but the view outlet was not set.'

    错误代码: *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[U ...

  2. 构建最小的docker容器

    创建一个最小的基本镜像: tar cv --files-from /dev/null | sudo docker import - skycn/base 建一个hello.go: package ma ...

  3. 动态设置和访问cxgrid列的Properties(转)

    原文:http://www.cnblogs.com/hnxxcxg/archive/2010/05/24/2940711.html 动态设置和访问cxgrid列的Properties 设置: cxGr ...

  4. 利用jQuery内置的data()方法存储数据

    jQuery提供了内置的data()方法,与DOM元素不同的是,它可以用来存储key/value类型的数据.数据的存储是很容易的: $('#myDiv').data('currentState', ' ...

  5. 9.3 js基础总结3

    2.后增量/后减量运算符 ++,-- var i = 10; var a = i++; // i = i + 1; alert(a); 3.比较运算符(>,<,>=,<=,== ...

  6. 批量部署ssh信任关系

    要求1:大批量部署SSH信任关系,在A文件分发服务器上大批量部署WEB层面信任关系文件分发服务器为:10.0.3.9 登录用户为:zhangsan WEB层IP段:10.0.3.10~10.0.3.6 ...

  7. Spark-Mllib(二)基本统计

    一.基本统计量 统计向量的长度,最大值,最小值,非0个数,模1和模2,方差等 import org.apache.spark.mllib.linalg.{Vector,Vectors} import ...

  8. table变色

    <!DOCTYPE html><html><head> <meta http-equiv="Content-Type" content=& ...

  9. 更新lispbox中的ccl和slime版本

    首先C-x C-f然后输入~,找到.emacs文件,根据slime官方文档说明的添加如下代码到文件末尾,重启一下emacs,slime就编译好了,然后这段代码就可以删除.否则每次启动emacs就算不用 ...

  10. 笔记26-徐 SQLSERVER内存分配和常见内存问题

    1 --64位SQLSERVER   应用在IA64操作系统                         7TB                         2TB               ...