第一段代码:e盘有个图片文件,用FileStream在d盘也整一个同样的图片
FileStream fs = new FileStream("e:\\6.jpg", FileMode.Open);
byte[] temp = new byte[fs.Length];
fs.Read(temp, 0, (Int32)fs.Length);
fs = new FileStream(@"d:\1.jpg", FileMode.Create);
fs.Write(temp, 0, temp.Length);第二段代码:e盘有个txt文件,用FileStream在d盘也整一个同样的txt文件
FileStream fs = new FileStream("e:\\6.txt", FileMode.Open);
byte[] temp = new byte[fs.Length];
fs.Read(temp, 0, (Int32)fs.Length);
fs = new FileStream(@"d:\1.txt", FileMode.Create);
fs.Write(temp, 0, temp.Length);问题:
上面两段代码,第一段代码能成功在d盘整一张同样的图片。第二段代码,在d盘的1.txt文件中,为什么没有写6.txt的内容,只是空的?
请问为什么?第一段代码能行,第二段代码不行
FileStream fs = new FileStream("e:\\6.jpg", FileMode.Open);
byte[] temp = new byte[fs.Length];
fs.Read(temp, 0, (Int32)fs.Length);
fs = new FileStream(@"d:\1.jpg", FileMode.Create);
fs.Write(temp, 0, temp.Length);第二段代码:e盘有个txt文件,用FileStream在d盘也整一个同样的txt文件
FileStream fs = new FileStream("e:\\6.txt", FileMode.Open);
byte[] temp = new byte[fs.Length];
fs.Read(temp, 0, (Int32)fs.Length);
fs = new FileStream(@"d:\1.txt", FileMode.Create);
fs.Write(temp, 0, temp.Length);问题:
上面两段代码,第一段代码能成功在d盘整一张同样的图片。第二段代码,在d盘的1.txt文件中,为什么没有写6.txt的内容,只是空的?
请问为什么?第一段代码能行,第二段代码不行
这个文件存在么?如果是拷贝文件,直接File.Copy就可以了。
为什么第一段代码不需要Close,也能画图片??
为什么第一段代码不需要Close,也能画图片??
几乎所有的IO流都一个缓冲区。
等缓冲满了。就会自动flush写到文件。
如果两个代码一样。只是文件不一样可以考虑这个。