FtpWebRequest request = (FtpWebRequest)WebRequest.Create(string.Format("{0}{1}", URL, node.ChildNodes[i].ChildNodes[0].InnerText));
request.Method = WebRequestMethods.Ftp.DownloadFile;
request.Credentials = new NetworkCredential("wususu", "wususu");
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Stream responseStream = response.GetResponseStream();
StreamReader red = new StreamReader(responseStream,Encoding.Unicode);
string tmp = red.ReadToEnd();
byte[] mbyte = Encoding.Unicode.GetBytes(tmp);和用DirectoryInfo获得的文件大小不一样啊,这是什么原因造成的呢?望高手解答
request.Method = WebRequestMethods.Ftp.DownloadFile;
request.Credentials = new NetworkCredential("wususu", "wususu");
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Stream responseStream = response.GetResponseStream();
StreamReader red = new StreamReader(responseStream,Encoding.Unicode);
string tmp = red.ReadToEnd();
byte[] mbyte = Encoding.Unicode.GetBytes(tmp);和用DirectoryInfo获得的文件大小不一样啊,这是什么原因造成的呢?望高手解答
FAT32分区的簇大小为 4KB ( 2GB~ 8GB)
8KB ( 8GB~16GB)
16KB (16GB~32GB)NTFS分区的簇大小为 4KB (2GB~2TB)
不管哪种分区,文件大小与占用空间是不一致的,单位以簇为单位,即使是0字节的文件,在NTFS分区下,占用空间也是4KB(4096字节)。可以在资源管理器中实际测试一下。
byte[] b = File.ReadAllBytes("C:\\2.txt");