我想用serversocket 和clientsocket作一个下载文件的程序。(因为文件可能很大, 所以采用缓冲区来一点一点的传内容)
一个是放在服务器上(用serversocket监听)
一个放在客户端(用clientsocket去连服务器上的serversocket)(客户端可能很多)。
如果客户端只有一个, 我可以实现, 服务器(serversocket所在窗体)声明一个文件变量, 当客户端法一个文件名请求下载时, 服务器打开待下载的文件,并与这个文件变量相关联(用AssignFile函数), 然后一点一点传(客户端每接到一部分数据, 就发一个信息给服务器, 服务器接到信息后再发一部分, 然后循环直到传完为止)。
但如果多个客户端同时请求下载文件, 则会创建多个winsocket连接(是线程的),也就应给打开多个文件供各个线程取数据, 可这些文件各个数不定, 不知道该存在什么地方。
请高手指点。
一个是放在服务器上(用serversocket监听)
一个放在客户端(用clientsocket去连服务器上的serversocket)(客户端可能很多)。
如果客户端只有一个, 我可以实现, 服务器(serversocket所在窗体)声明一个文件变量, 当客户端法一个文件名请求下载时, 服务器打开待下载的文件,并与这个文件变量相关联(用AssignFile函数), 然后一点一点传(客户端每接到一部分数据, 就发一个信息给服务器, 服务器接到信息后再发一部分, 然后循环直到传完为止)。
但如果多个客户端同时请求下载文件, 则会创建多个winsocket连接(是线程的),也就应给打开多个文件供各个线程取数据, 可这些文件各个数不定, 不知道该存在什么地方。
请高手指点。
我是直接使用Socket API来做的!