2
我正在构建一个应用程序,用于将文件从客户端上传到使用wcf的服务器,并且我试图实现一种在连接失败时恢复上载的方法。假设我有一个500 KB的文件,上传开始并且连接失败,只有100 KB被复制。当我恢复时,服务器应用程序知道它有100 KB。使用wcf恢复和上传文件
当我读与这样的代码传输的流:其中I开始读取字节
while ((bytes = stream.Read(buffer, 0, bufferSize)) > 0)
- 那是0(偏移)??
如果是这样,我应该从100开始读?类似:
而((字节= stream.Read(缓冲液,100,缓冲区大小))> 0)
然后追加字节到现有的不完整的文件?
这是我的代码:
using (FileStream fs = new FileStream(@"C:\" + name, FileMode.Append))
{
int bufferSize = 4 * 1024; // 4KB buffer
byte[] buffer = new byte[bufferSize];
int bytes;
while ((bytes = stream.Read(buffer, 100, bufferSize)) > 0)
{
fs.Write(buffer, 100, bytes);
fs.Flush();
}
stream.Close();
fs.Close();
}
我有什么变化,使?
我得到一个异常,该方法不受支持。 CanSeek属性设置为false。 – blur 2011-06-09 00:31:56