using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
namespace 文件复制
{
class Program
{
static void Main(string[] args)
{
string souce = @"H:\Cstudy\data\picture\aaa.jpg";
string targer = @"H:\Cstudy\data\picture\Copy_aaa.jpg";
Copyfiles(souce, targer);
}
public static void Copyfiles(string sou, string tar)
{
//创建一个文件流来读取文件
using(FileStream fsread = new FileStream(sou,FileMode.Open,FileAccess.Read))
{
//创建一个文件流来写入文件
using (FileStream fswrite = new FileStream(tar,FileMode.OpenOrCreate,FileAccess.Write))
{
byte[] buff = new byte[1024*1024*3];
while (true)
{
int fscount = fsread.Read(buff, 0, buff.Length);
if (fscount == 0)
{ break; }
fswrite.Write(buff, 0, fscount);
}
}
}
}
}
}
之所以能用while循环,是因为FileStream的read和write方法,能够自动接着顺序读取相关的字节。除非是关闭和释放了对象