gpt4 book ai didi

java - getContentLength 在 Android 上不适用于 FTP url

转载 作者:行者123 更新时间:2023-11-30 04:41:33 24 4
gpt4 key购买 nike

以下代码在 Android 上为文件大小打印长度 -1,但在桌面 JAVA 上运行良好。我使用的是 Android 2.2。

URL url1 = null;
URLConnection uconn = null;
try {
url1 = new URL("ftp://FTPHOST/file.zip");
uconn = url1.openConnection();
uconn.setDoInput(true);
int len= uconn.getContentLength();
int headersize = uconn.getHeaderFields().size();
System.out.println("******************************* "+len);
} catch (Exception e) {
e.printStackTrace();
}
return null;

让我知道 android 中是否有任何解决方法来获取文件大小..

最佳答案

Android 平台的 url 连接代码在后台使用不同的基础(Apache HTTP 客户端),而不是 Oracle JVM 的实现。 Apache HTTP 客户端本身并不像桌面 JVM 那样支持 FTP 下载。

桌面 JVM 使用一个历史上名为 sun.net.ftp.FtpClient 的类来实现 FTP 功能。 Android 上没有一个 sun 类可用,因此这不起作用。您需要获得自己的 FTP 客户端。

关于java - getContentLength 在 Android 上不适用于 FTP url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5897191/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com