I m试图向原始数据表(大约22种甲基溴)撰写一些数据。 情况如下:
- Open local file
- Read a chunk of bytes.
- Write it to the Socket
- Repeat 2 & 3 until the end of the file.
现在的问题是,我的法典(下文)没有移交完整的档案。 它可能把22个甲基溴中的3个转让给我的测试档案。 但是,这些追踪是完整的,显示完整的数据。 我怀疑,在完成目前的工作之前,也许会开始撰写下一个空白。
while(fs.bytesAvailable > 0){
var readAmount = (fs.bytesAvailable < socketBufferSize) ? fs.bytesAvailable : socketBufferSize;
seq++;
air.trace(">"+seq+" WritePacket "+readAmount+" "+fs.position+" "+fs.bytesAvailable);
fs.readBytes(bytes, 0, readAmount);
air.trace(bytes.length);
socket2.writeBytes(bytes, 0, bytes.length);
socket2.flush();
}
fs.close();
socket2.close();
首先是I> 。 我想知道我是否是这样。
在书写间隔之间插入一个强制性的延迟,可确保档案完全转入下文各页。 然而,这不是可以接受的解决办法。 我愿知道,我是否应该支持某些活动,或者是否需要以不同的方式做任何事情。 另一端的服务器是FileZilla FTP服务器。
var sendData = function (){
if(fs.bytesAvailable > 0){
var readAmount = (fs.bytesAvailable < socketBufferSize) ? fs.bytesAvailable : socketBufferSize;
seq++;
air.trace(">"+seq+" WritePacket "+readAmount+" "+fs.position+" "+fs.bytesAvailable);
fs.readBytes(bytes, 0, readAmount);
air.trace(bytes.length);
socket2.writeBytes(bytes, 0, bytes.length);
socket2.flush();
}
else{
air.trace("Closing Connection");
fs.close();
socket2.close();
}
}
var interval = setInterval(sendData, 100);
增 编