java - Jscape 简历上传

标签 java sftp

我对 com.jscape.inet.sftp.Sftp 类中使用的简历上传方法有疑问。

根据 API,在下面的方法中,第二个参数是 localFileOffset

resumeUpload(java.lang.String localFile, long localFileOffset)

localFileOffset 是如何计算的?我假设 localFileOffset 应该是继续上传的点,这基本上是已上传文件的文件大小(以字节为单位)。

如下所示:

Boolean isRemoteFileAvailable = sftp.isValidPath(uploadDir + "/" + RemoteFileName);

if (isRemoteFileAvailable)
{
    remoteFileSize = sftp.getFilesize(rrFileName);
    localFileOffset = remoteFileSize;
}

最佳答案

经过几次点击、尝试和几轮测试,这是我的结论。

下面的 API 是方法定义: resumeUpload(java.io.File localFile, long localFileOffset)

如果您使用 localFileOffset (本地文件大小 - 远程文件大小),您最终会丢失数据。

第二个参数绝对不是本地文件偏移量,而是远程文件大小(以字节为单位),计算方式为 sftp.getFilesize(remoteFile);

我通过多次停止和使用恢复上传来多次测试我的代码,并将原始文件与上传的文件进行比较。没有区别,最后一次恢复上传在几秒钟内完成,从而确认它是从完成的位置恢复而不是从头开始上传。

关于java - Jscape 简历上传,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29990125/

相关文章:

java - 如何用java将 "x26#39;"解码为符号’

java - 无法使用 Rome API 从提要中读取图像 URL

linux - 用于在远程 SFTP 服务器上移动文件的 Shell 脚本

linux - 需要在 MacO 上移动有限数量的文件

java - 写入标准输出与写入文件

java - springboot redisTemplate 的拆箱。可能会产生 NullPointerException

java - 如何在 windows 和 linux 远程服务器之间传输/同步内容?

Coldfusion 安全 cftp 超时

Java按键事件和定时器控制

windows - 适用于 Windows 的最佳免费脚本 SFTP 客户端是什么?