我只是要使用FileUpload.FileBytes属性,但查看MSDN库中的相应示例我对此部分感到困惑:
int fileLen;
// Get the length of the file.
fileLen = FileUpload1.PostedFile.ContentLength;
// Create a byte array to hold the contents of the file.
byte[] input = new byte[fileLen - 1];
input = FileUpload1.FileBytes;
(从here开始,我省略了一些不重要的行)
这段代码中的新内容对我来说就像垃圾收集器的食物一样没用. (如果文件很大,可能是大食物.)为什么他们不写简单:
byte[] input = FileUpload1.FileBytes;
我对.NET和C#太新了,要勇敢地宣称这只是多余的或者是一个糟糕的书面例子.它有任何目的(可能是性能优势等)吗? (另外我不明白为什么他们从fileLen中减去1.)
最佳答案 来自MSDN的代码样本确实在质量上有所不同,这是错误编码样本的一个很好的例子.
如你所说,简单写一下更容易:
byte[] input = FileUpload1.FileBytes;
并且字节数组的长度存在错误 – 没有理由从发布的长度中减去1.