【发布时间】:2011-06-13 15:50:48
【问题描述】:
我在 Android 上使用 Apache Commons ftp 库。 如何知道在上传或下载文件期间传输的数据量并将其显示在进度对话框中?
【问题讨论】:
我在 Android 上使用 Apache Commons ftp 库。 如何知道在上传或下载文件期间传输的数据量并将其显示在进度对话框中?
【问题讨论】:
也许这段代码可以为您指明正确的方向:
try {
InputStream stO = new BufferedInputStream(ftp.retrieveFileStream("foo.bar"),
ftp.getBufferSize());
OutputStream stD = new FileOutputStream("bar.foo");
org.apache.commons.net.io.Util.copyStream(stO, stD, ftp.getBufferSize(),
CopyStreamEvent.UNKNOWN_STREAM_SIZE,
new CopyStreamAdapter() {
public void bytesTransferred(long totalBytesTransferred,
int bytesTransferred,
long streamSize) {
// Your progress Control code here
}
});
ftp.completePendingCommand();
} catch (Exception e) { ... }
【讨论】: