byte[] b = new byte[32];
int i=0;
int result =0;
do
{
result=fs.Read(b,i*32,32);
if(i==0)
{
HttpContext.Current.Response.Write(o.UploadFile(b,"Book1.xls","b"));
}
else
{
HttpContext.Current.Response.Write(o.UploadFile(b,"Book1.xls","c"));
}
i++;
}while(result==32);
fs.Close();
第一次循环的时候没有问题,可是到了第二次循环就好象超过范围了,请问应该怎么改,是怎么回事.
int i=0;
int result =0;
do
{
result=fs.Read(b,i*32,32);
if(i==0)
{
HttpContext.Current.Response.Write(o.UploadFile(b,"Book1.xls","b"));
}
else
{
HttpContext.Current.Response.Write(o.UploadFile(b,"Book1.xls","c"));
}
i++;
}while(result==32);
fs.Close();
第一次循环的时候没有问题,可是到了第二次循环就好象超过范围了,请问应该怎么改,是怎么回事.
解决方案 »
- Winform动态调用button,修改text时出错未将对象引用设置到...
- 用户自定义控件位置
- google 浏览器件能不能2次开发,或者提供控件
- 当 BindingNavigatorr 的BindingSource属性改变时.会触发哪个事件
- C#:关于字符串提取数字的弱智小问题
- 我刚接触C++根本外行,按方案表格填了其中张xml_interface.cpp出错,已经搞头晕,求教诸师 不胜感激!望那位师加我Q139160578以后能酬教
- c#写的发送邮件附件的问题。
- 高分求解:如何从一个SQL语句中提取出表示字段的字符串
- 快点帮忙啊
- 分类问题,如何实现这样的效果,请高手指教!
- [WINCE开发小问题]C#找不到命名空间system.data.sqlclient的问题,怪~!
- DataGrid改變數據源後,沒有數據。
result=fs.Read(b,i*32,32);with
result=fs.Read(b,0,32);
fs = System.IO.File.OpenRead("d:\\Book1.xls");
这是fs的定义.
fs.Read(b,0,32); 0是指数组内部的offset,而不是stream内的offset
那他在第二次读的时候就自动知道该从FS的哪里读,而不是从头读吗
那他在第二次读的时候就自动知道该从FS的哪里读,而不是从头读吗ref:
http://blog.csdn.net/Knight94/archive/2006/08/25/1116346.aspx
中第二个参数是相对第一个参数(即Buffer)而言的,而不是对于Stream的
fs.Read(b,0,32); 0是指数组内部的offset,而不是stream内的offset虽然不提倡迷信Knight94(愚翁)说的,但是,他说的大部分都是对的^