导航:首页 > 文件教程 > javaftp下载指定文件

javaftp下载指定文件

发布时间:2025-05-21 07:49:48

㈠ JAV中怎么实现FTP的下载功能

java中实现FTP下载功能,通常需要使用FTP客户端库来简化与FTP服务器的交互。这里提供了一个简单的Java FTP客户端实现示例,包括三个主要功能:列出FTP服务器上的文件、从FTP服务器下载文件、向FTP服务器上传文件。首先,我们来看如何列出FTP服务器上的文件:

java
void ftpList_actionPerformed(ActionEvent e) {
String server = serverEdit.getText(); // 输入的FTP服务器的IP地址
String user = userEdit.getText(); // 登录FTP服务器的用户名
String password = passwordEdit.getText(); // 登录FTP服务器的用户名的口令
String path = pathEdit.getText(); // FTP服务器上的路径
try {
FtpClient ftpClient = new FtpClient();
ftpClient.openServer(server); // 连接FTP服务器
ftpClient.login(user, password); // 登录FTP服务器
if (path.length() != 0) ftpClient.cd(path);
TelnetInputStream is = ftpClient.list();
int c;
while ((c = is.read()) != -1) {
System.out.print((char) c);
}
is.close();
ftpClient.closeServer(); // 退出FTP服务器
} catch (IOException ex) {
}
}

接着,我们来看如何从FTP服务器下载文件:

java
void getButton_actionPerformed(ActionEvent e) {
String server = serverEdit.getText();
String user = userEdit.getText();
String password = passwordEdit.getText();
String path = pathEdit.getText();
String filename = filenameEdit.getText();
try {
FtpClient ftpClient = new FtpClient();
ftpClient.openServer(server);
ftpClient.login(user, password);
if (path.length() != 0) ftpClient.cd(path);
ftpClient.binary();
TelnetInputStream is = ftpClient.get(filename);
File file_out = new File(filename);
FileOutputStream os = new FileOutputStream(file_out);
byte[] bytes = new byte[1024];
int c;
while ((c = is.read(bytes)) != -1) {
os.write(bytes, 0, c);
}
is.close();
os.close();
ftpClient.closeServer();
} catch (IOException ex) {
}
}

最后,我们来看如何向FTP服务器上传文件:

java
void putButton_actionPerformed(ActionEvent e) {
String server = serverEdit.getText();
String user = userEdit.getText();
String password = passwordEdit.getText();
String path = pathEdit.getText();
String filename = filenameEdit.getText();
try {
FtpClient ftpClient = new FtpClient();
ftpClient.openServer(server);
ftpClient.login(user, password);
if (path.length() != 0) ftpClient.cd(path);
ftpClient.binary();
TelnetOutputStream os = ftpClient.put(filename);
File file_in = new File(filename);
FileInputStream is = new FileInputStream(file_in);
byte[] bytes = new byte[1024];
int c;
while ((c = is.read(bytes)) != -1) {
os.write(bytes, 0, c);
}
is.close();
os.close();
ftpClient.closeServer();
} catch (IOException ex) {
}
}

以上代码展示了如何使用Java实现FTP的基本功能。通过这三个方法,你可以轻松地与FTP服务器进行交互,实现文件的上传和下载。当然,实际应用中还需要考虑更多的异常处理和安全性问题。

㈡ 求用java写一个ftp服务器客户端程序

import java.io.*;
import java.net.*;public class ftpServer extends Thread{ public static void main(String args[]){
String initDir;
initDir = "D:/Ftp";
ServerSocket server;
Socket socket;
String s;
String user;
String password;
user = "root";
password = "123456";
try{
System.out.println("MYFTP服务器启动....");
System.out.println("正在等待连接....");
//监听21号端口
server = new ServerSocket(21);
socket = server.accept();
System.out.println("连接成功");
System.out.println("**********************************");
System.out.println("");

InputStream in =socket.getInputStream();
OutputStream out = socket.getOutputStream();

DataInputStream din = new DataInputStream(in);
DataOutputStream dout=new DataOutputStream(out);
System.out.println("请等待验证客户信息....");

while(true){
s = din.readUTF();
if(s.trim().equals("LOGIN "+user)){
s = "请输入密码:";
dout.writeUTF(s);
s = din.readUTF();
if(s.trim().equals(password)){
s = "连接成功。";
dout.writeUTF(s);
break;
}
else{s ="密码错误,请重新输入用户名:";<br> dout.writeUTF(s);<br> <br> }
}
else{
s = "您输入的命令不正确或此用户不存在,请重新输入:";
dout.writeUTF(s);
}
}
System.out.println("验证客户信息完毕...."); while(true){
System.out.println("");
System.out.println("");
s = din.readUTF();
if(s.trim().equals("DIR")){
String output = "";
File file = new File(initDir);
String[] dirStructure = new String[10];
dirStructure= file.list();
for(int i=0;i<dirStructure.length;i++){
output +=dirStructure[i]+"\n";
}
s=output;
dout.writeUTF(s);
}
else if(s.startsWith("GET")){
s = s.substring(3);
s = s.trim();
File file = new File(initDir);
String[] dirStructure = new String[10];
dirStructure= file.list();
String e= s;
int i=0;
s ="不存在";
while(true){
if(e.equals(dirStructure[i])){
s="存在";
dout.writeUTF(s);
RandomAccessFile outFile = new RandomAccessFile(initDir+"/"+e,"r");
byte byteBuffer[]= new byte[1024];
int amount;
while((amount = outFile.read(byteBuffer)) != -1){
dout.write(byteBuffer, 0, amount);break;
}break;

}
else if(i<dirStructure.length-1){
i++;
}
else{
dout.writeUTF(s);
break;
}
}
}
else if(s.startsWith("PUT")){
s = s.substring(3);
s = s.trim();
RandomAccessFile inFile = new RandomAccessFile(initDir+"/"+s,"rw");
byte byteBuffer[] = new byte[1024];
int amount;
while((amount =din.read(byteBuffer) )!= -1){
inFile.write(byteBuffer, 0, amount);break;
}
}
else if(s.trim().equals("BYE"))break;
else{
s = "您输入的命令不正确或此用户不存在,请重新输入:";
dout.writeUTF(s);
}
}

din.close();
dout.close();
in.close();
out.close();
socket.close();
}
catch(Exception e){
System.out.println("MYFTP关闭!"+e);

}
}}

㈢ java 使用ftp 下载文件在windows环境下正常,在linux下载不了

GET <服务端:下载的档名> <本地端:存放的档名>
PUT <本地端:回上传的档名> <服务端:存放的档名>

下载答:
ex:从服务器端下载一个档名为 linux.rar 的文件到本地路径 C:\,存放档名为 LINUX_S.RAR。

ftp> get linux.rar c:\LINUX_S.RAR

上传:
ex:从本地端路径 C:\ 上传一个档名为 LINUX_S.RAR 的文件到服务器,存放档名为 linux.rar。

ftp> put c:\LINUX_S.RAR linux.rar

㈣ java在浏览器上获取FTP读文件路径

Java在浏览器上获取FTP读文件路径涉及FTP上传下载的基本操作。首先,你需要安装一个FTP服务端程序并启动,然后下载一个FTP客户端程序测试连接。确保连接成功后,可以开始编写代码进行上传下载。

上传代码示例中,首先定义一个FTPClient对象,设置文件传输类型为二进制类型。通过connect方法连接到FTP服务器,并登录。上传文件时,如果是目录则递归创建目录并上传文件;如果是文件则直接上传。主函数中,通过connect方法连接到FTP服务器,指定上传文件路径并调用upload方法上传文件。

下载代码示例中,连接到FTP服务器后,通过download方法下载文件。支持断点续传,并且在下载过程中显示进度。如果本地文件大于远程文件,下载将被中止。如果远程文件不存在,下载失败。下载成功时,返回相应的状态。

在实际开发中,需要根据具体需求对代码进行调整。例如,可以添加异常处理机制,提高程序的健壮性。同时,根据应用场景选择合适的FTP库,如Apache Commons Net库。

在进行FTP操作时,务必注意安全问题,如设置正确的权限和密码,避免敏感信息泄露。同时,确保FTP服务端程序的安全配置,防止未授权访问。

FTP是一种简单的文件传输协议,适用于需要传输大量文件的场景。然而,在现代Web开发中,越来越多地使用HTTP或其他协议进行文件传输,因为它们提供了更好的安全性、可靠性和用户体验。

总之,Java在浏览器上获取FTP读文件路径涉及一系列操作,包括连接、上传和下载。通过合理设计代码,可以实现高效、安全的文件传输功能。

㈤ 用java写一个sftp客户端程序 能够上一个sftp的目录下载文件到本地指定目录

不需要装软件,下载需要执行sftp服务器目录和本地目录
你说的directory空指针,应该是你没有指定从sftp的哪个目录下载

阅读全文

与javaftp下载指定文件相关的资料

热点内容
如何用爬虫抓去app数据库 浏览:898
微信红包代码是什么 浏览:657
税收居民身份声明文件在哪里下载 浏览:91
编程中spo是什么 浏览:66
什么app能看完精灵宝可梦全集 浏览:963
mac压缩文件密码 浏览:739
危险网站如何解除 浏览:505
如何在北京通app上变更定点医院 浏览:702
统计与编程学什么 浏览:996
什么网站可以下载家装图纸 浏览:339
强行清空桌面文件夹 浏览:623
女生o是什么意思网络语言 浏览:766
熊猫看书2013旧版本 浏览:413
u盘中zip显示为非压缩文件 浏览:831
苹果电脑不能连接网络 浏览:287
贴吧特殊代码 浏览:470
word2007横线 浏览:318
cmd文件语法不正确 浏览:842
js改变对象的值 浏览:882
苹果电脑安装qq游戏 浏览:981

友情链接