babak1
پنج شنبه 07 بهمن 1389, 21:57 عصر
سلام:
در برنامه می خوام بدونم که چطور هر بار که وارد حلقه while میشه از ادامه فایل می خونه ؟ و هر دفعه اشیا در داخل حلقه ساخته میشه ؟(قسمت ستاره دار) چرا 1 بار بیرون حلقه ساخته نشده اند ؟
public void fileCopy(string SourceFile, string destinationFile)
{
int numRead;
long fileLength;
FileStream from = new FileStream(SourceFile, FileMode.Open);
FileStream To = new FileStream(destinationFile, FileMode.Create);
byte [] buffer =new byte [1024] ;
fileLength = from.Length;
progressBar1.Minimum = 0;
progressBar1.Maximum = (int)fileLength;
//=====================================
while(fileLength>0)
{
BinaryReader reader = new BinaryReader(from); **
numRead = reader.Read(buffer,0,1024);
fileLength-=numRead;
BinaryWriter writer = new BinaryWriter(To); **
writer.Write(buffer,0,numRead);
progressBar1.Value+=numRead;
writer.Flush();
}
from.Close();
To.Close();
if(progressBar1.Value>99)
{
progressBar1.Value = 0;
MessageBox.Show("the file was copied successfuly");
}
در برنامه می خوام بدونم که چطور هر بار که وارد حلقه while میشه از ادامه فایل می خونه ؟ و هر دفعه اشیا در داخل حلقه ساخته میشه ؟(قسمت ستاره دار) چرا 1 بار بیرون حلقه ساخته نشده اند ؟
public void fileCopy(string SourceFile, string destinationFile)
{
int numRead;
long fileLength;
FileStream from = new FileStream(SourceFile, FileMode.Open);
FileStream To = new FileStream(destinationFile, FileMode.Create);
byte [] buffer =new byte [1024] ;
fileLength = from.Length;
progressBar1.Minimum = 0;
progressBar1.Maximum = (int)fileLength;
//=====================================
while(fileLength>0)
{
BinaryReader reader = new BinaryReader(from); **
numRead = reader.Read(buffer,0,1024);
fileLength-=numRead;
BinaryWriter writer = new BinaryWriter(To); **
writer.Write(buffer,0,numRead);
progressBar1.Value+=numRead;
writer.Flush();
}
from.Close();
To.Close();
if(progressBar1.Value>99)
{
progressBar1.Value = 0;
MessageBox.Show("the file was copied successfuly");
}