0 0

java如何获得ftp服务器上指定文件的大小10

我想获得ftp服务器上指定文件的大小
以及下载过程中文件的已完成下载的大小
求教


这个是我写的方法

code:: 
public static boolean downLoadFtp(String ftpServerIp, String ftpUser,
String ftpPassWord, String url, String filePath, String fileName) {


try {
FtpClient fc = new FtpClient(ftpServerIp);
fc.login(ftpUser, ftpPassWord);
fc.binary();
int ch;
int filesize = 0;
String fileStr = filePath + fileName;

File filename = new File(fileStr);
System.out.println("C::     download   89    filename size   ::  "+filename.toString());

if (filename.exists()) {//如果存在就直接覆盖
filename.createNewFile();
//return false;
}
if (!filename.exists()) {
if (filename.createNewFile()) {
System.out.println("File   is   created   successfully!");

}
}

RandomAccessFile getFile = new RandomAccessFile(fileStr, "rw");

getFile.seek(0);

// url="/FTPTest1.txt";
TelnetInputStream fget = fc.get(fileName);

DataInputStream puts = new DataInputStream(fget);



while ((ch = puts.read()) >= 0) {
filesize = filesize + ch;

getFile.write(ch);
}
System.out.println("C::   download   96    filesize  :   :   "
+ filesize);
fget.close();
getFile.close();
fc.closeServer();
} catch (IOException ex) {

ex.printStackTrace();

}
return true;
}


我应该如何在下载之前获得文件的大小啊
以及在现在过程中下载文件的大小···
谢谢··
我想做一个进度条····
可是没有办法获得文件的大小····
谢谢····
2009年3月18日 17:07

1个答案 按时间排序 按投票排序

0 0

采纳的答案


进度条的实现,其实说起来很简单。就是在程序中开启两个线程,第一个线程用于动态的改变界面上进度条的value值,而第二个线程则在上传或是下载的过程中,做成一个循环,在此循环中,每次读取一定数量如8192字节数的数据。然后传完此数据后,调用第一个线程中的 updateProgress方法,来更新界面进度条的value值。

http://tech.it168.com/j/2007-10-18/200710182058687_3.shtml

相信这篇文章可以解答你的问题。这篇文章详细介绍了java ftp 的实现。

2009年3月18日 17:18

相关推荐

    获取ftp服务器文件的大小

    ### 获取FTP服务器文件大小的知识点解析 在进行网络文件传输时,经常需要了解远程文件的大小,以便于更好地控制文件的下载进度或者进行其他相关的管理操作。本文将围绕“获取FTP服务器文件的大小”这一主题展开,...

    获取FTP服务器上的文件大小源码

    本篇文章将详细讲解如何编写源码来获取FTP服务器上的文件大小,这对于监控服务器存储空间或者自动化任务是非常实用的。 首先,我们需要了解基本的FTP工作原理。FTP基于TCP/IP协议,通过建立控制连接和数据连接来...

    Java FTP 指定下载文件和上传文件到指定的服务器目录

    通过本文介绍的方法,您可以轻松实现Java应用程序中对FTP服务器的文件上传与下载操作,并能有效地指定文件上传和下载的目标目录。这对于企业级应用中的文件管理有着重要的作用。同时,在实际应用过程中还需注意安全...

    FTP中获取文件大小

    本文将深入探讨如何使用Java来获取FTP服务器上的文件大小以及文件夹属性,并简要介绍FTP的一些常用命令。 **Java FTP获取文件大小** 在Java中,我们可以使用`java.net.Socket`和`java.io`库来实现基本的FTP操作,...

    Java FTP 实现跨服务器文件上传下载

    该类提供了一系列的方法用于连接、登录FTP服务器,并执行各种文件操作。 ```java private FTPClient ftpClient; private void initConfig() { Properties properties = new Properties(); InputStream is = null...

    java工具类 ftp 文件比较 socket http

    例如,`java.io.File`类可以获取文件的基本信息,通过比较文件大小和修改时间进行初步判断。对于内容比较,可以使用`java.nio.file.Files`的`readAllBytes()`方法读取文件内容,然后进行字节对齐比较。如果文件较大...

    java登录FTP下载文件,支持断点下载

    2. **连接服务器**:使用`connect()`方法连接到FTP服务器,指定服务器地址和端口号。 ```java ftpClient.connect("ftp.server.com", 21); ``` 3. **登录**:通过`login()`方法提供用户名和密码进行身份验证。 ```...

    java应用ftp操作文件

    5. **FTPFile**:表示FTP服务器上的文件或目录对象,包含了文件的属性信息,如大小、类型、修改时间等。 6. **FTP传输模式**: - **ASCII模式**:适用于文本文件,会自动转换行结束符。 - **二进制模式**:适用于...

    xuchuanftp_java_FTP断点续传_

    3. **获取文件信息**:在开始上传前,需要检查服务器上目标文件是否存在,如果存在则获取其当前大小,这将作为断点续传的起点。 4. **设置传输模式**:为了实现断点续传,需要将FTP传输模式设置为二进制模式...

    java实现ftp的所有操作

    本项目提供了一套完整的Java实现FTP操作的代码示例,包括上传、下载、删除服务器上的指定文件以及断点续传功能。以下是对这些功能的详细解释: 1. **FTP连接与登录**: 在进行任何FTP操作之前,首先需要建立一个...

    java ftp 多线程 断点续传等知识

    在Java FTP中,通过检查文件的大小和修改时间,可以确定是否已经部分下载,然后使用FTPClient的`restart`方法指定新的起始位置来实现断点续传。 多线程在Java FTP中常用于提高文件下载速度。通过创建多个线程,每个...

    基于strurs2文件上传,利用FTP将文件直接上传至指定的FTP服务器

    在这个配置中,`fileUpload` Action使用了内置的`fileUpload`拦截器,用于处理文件上传,并限制了最大文件大小和允许的文件类型。 接下来,我们需要创建一个Action类,如`FileUploadAction.java`,它将处理文件上传...

    ftp.rar_ftp_ftp java_java ftp_java简单的FTP

    FTP允许用户从远程服务器上获取文件或向服务器发送文件。它分为两种模式:主动模式(Port模式)和被动模式(Passive模式)。主动模式中,客户端指定一个端口等待服务器连接,而被动模式则是服务器开启一个新的端口并...

    java实现FTP断点续传

    - 获取文件大小:`FTPClient.listFiles()`,根据返回的列表找到目标文件的大小。 - 设置续传位置:`FTPClient.setRestartOffset(lastTransferredBytes)`。 - 开始续传:使用`retrieveFile()`或`storeFile()`。 6...

    Java实现上传文件图片到指定服务器目录

    Java实现上传文件图片到指定服务器目录 在Java中实现上传文件图片到指定服务器目录是非常重要的功能,它可以帮助开发者快速实现文件上传功能。本文将通过实例代码,详细介绍Java实现上传文件图片到指定服务器目录的...

    ftp.rar_FTP 断点续传_Java FTP上传_ftp 断点_ftp断点续传Java_java ftp

    4. **文件大小检查**:在开始上传之前,客户端需要检查本地文件的大小,并与服务器上已有的文件大小做对比。如果服务器上的文件已经部分存在,那么就使用REST命令设置续传的位置。 5. **多线程上传**:为了提高上传...

    最新java做的比较完善的FTP上传下载文件服务器源码.doc

    通常需要考虑文件大小、上传进度显示以及错误处理。 - **删除文件**:源码中有一个未实现的`deleFile`方法,应该是用来删除服务器上的文件。在实际实现时,需要调用FTP客户端的相应方法来执行删除操作。 4. **异常...

    java实现两台服务器间文件复制的方法

    System.out.println("文件名: " + fileName + ", 文件大小: " + fileSize); InputStream is = s.getInputStream(); BufferedInputStream bis = new BufferedInputStream(is); File file = new File("D:\\lib.rar");...

    java版ftp上传下载工具类

    - **下载**:`downloadFile()` 方法用于从FTP服务器下载文件,同样需要指定远程文件路径和本地保存路径。 5. **目录操作**:可能包括列出远程目录的文件和子目录(`listFiles()`),改变当前工作目录(`change...

Global site tag (gtag.js) - Google Analytics