`
chakey
  • 浏览: 359579 次
  • 性别: Icon_minigender_1
  • 来自: 水星
社区版块
存档分类
最新评论

Java实现Ftp单个文件的的上传和下载

    博客分类:
  • Java
阅读更多
package ftp;

import sun.net.ftp.*;
import sun.net.*;
import java.io.*;

public class MyFtp {
public static void main(String[] args) {
String ftpIP = "127.0.0.1";
String userName = "user";
String password = "password";
System.out.println("----------------------------------------");
System.out.println("----------Nice to meet you!-------------");


try {
String str;

FtpClient ftp = new FtpClient(ftpIP);

ftp.login(userName, password);
str = ftp.getResponseString();
System.out.println(str);

    upload(ftp);
   
  
    printFileList(ftp);
download(ftp);
  



} catch (Exception e) {
e.printStackTrace();
}
}

private static void printFileList(FtpClient ftp) throws IOException {
byte[] bt;
String str;
TelnetInputStream in = ftp.list();
str = ftp.getResponseString();
System.out.println(str);
ftp.binary();
bt = new byte[in.available()];
in.read(bt);
str = new String(bt);

System.out.println("The file list:");

System.out.println(str);

}

private static void upload(FtpClient ftp) throws IOException,
FileNotFoundException {
TelnetOutputStream putfile;

System.out.println("please input the name of file you want to upload:");
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
String filename = br.readLine();
putfile = ftp.put(filename);
BufferedReader fis = new BufferedReader(new FileReader(filename));
BufferedWriter fos = new BufferedWriter(new OutputStreamWriter(
putfile));
while (true) {
String i = fis.readLine();
if (i == null)
break;
else {
fos.write(i);
fos.flush();
fos.newLine();
}
}
putfile.close();
fis.close();
fos.close();

System.out.println("file upload success!");
}

private static void download(FtpClient ftp) throws IOException {
TelnetInputStream getfile;
String str;

System.out.println("Please input the name of the file you want to download:");
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
String filename = br.readLine();

getfile = ftp.get(filename);
str = ftp.getResponseString();
System.out.println(str);
//ftp.ascii();
ftp.binary();
str = ftp.getResponseString();
System.out.println(str);

InputStreamReader isrFile = new InputStreamReader(getfile);
BufferedReader b = new BufferedReader(isrFile);
//BufferedWriter writer = new BufferedWriter(b);
BufferedWriter writer = new BufferedWriter(new FileWriter(new File(filename)));
// writer = new BufferedWriter(new FileWriter(new File(
//"test.txt")));
while (true) {
String s = b.readLine();
if (s == null)
break;
else
writer.write(s);
writer.flush();
writer.newLine();
}
writer.close();
isrFile.close();
b.close();
getfile.close();

System.out.println("file download success!");

}
}

在结尾我得说一句:
为了测试 得自己下载个软件把自己作为Ftp服务器
要是联网了呢 就通过ipconfig查看自己的IP 那个就是FTP地址啦
如果没有联网 那么ftp地址就是127.0.01
0
0
分享到:
评论

相关推荐

    JAVA实现简单的对FTP上传与下载

    简单的实现了单个文件的上传与下载,内附使用方法

    java ftp上传进行文件

    java ftp上传进行文件的读取和上传 上传单个文件的文件流 创建远程服务器目录 删除指定文件 上传单个文件 获取指定ftp目录下文件名

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

    java相关的 ftp知识 如:ftp服务器、ftp主被动通讯模式、断点续传、单个文件多线程下载

    Java实现FTP文件与文件夹的上传和下载

    本文主要分享了Java实现文件上传和下载的具体实例,分为单个文件的上传与下载和整个文件夹的上传与下载。具有很好的参考价值,需要的朋友一起来看下吧

    android ftp上传功能实现步骤

    今天讲一讲 android怎么上传文件到ftp 这个功能比较实用的,因为批量上传文件http post 用上传限制的。(特别是大文件) 1、先说说例子文件结构 2、一个简单的界面 ...5、上传单个文件 uploadSingleFile

    FtpUpload

    用java编写的ftp客户端,可以上传单个文件,或是整个目录。反之,可以从服务器端下载,或是显示列表信息。

    Ftp Site Deployer:适用于Java,PHP和Maven项目的FTP Netbeans插件-开源

    Ftp Site Deployer是一个Netbeans插件,不是独立的FTP客户端。 它是经过设计的,对于将更改上传到用Java,PHP开发的网站特别有用。 该插件允许从Netbeans IDE内的项目视图中传输单个文件或文件夹。

    KODExplorer:一个开源码的基于Web的在线文件管理,代码编辑器。它提供了一整套完整的在线文件管理,文件预览,编辑,上传下载,在线解压缩,音乐播放功……

    它提供了类Windows经典用户界面,一整套在线文件管理,文件预览,编辑,上传下载,在线解压缩,音乐播放功能。让你同时拥有与本地操作一样方便,快捷,安全的体验。商业版授权请联系:kalcaddle#qq.com 1.是什么: ...

    FtpUploadDownload

    FtpUploadDownload实现了Java代码的FTP批量上传、单个文件上传、批量下载、单个文件下载功能。

    Python核心编程第二版(ok)

     1.4 下载和安装Python   1.5 运行Python   1.5.1 命令行上的交互式解释器   1.5.2 从命令行启动脚本   1.5.3 集成开发环境   1.5.4 其他的集成开发环境和执行环境   1.6 Python文档   1.7 ...

    Python核心编程第二版

     1.4 下载和安装Python   1.5 运行Python   1.5.1 命令行上的交互式解释器   1.5.2 从命令行启动脚本   1.5.3 集成开发环境   1.5.4 其他的集成开发环境和执行环境   1.6 Python文档   1.7 ...

    asp.net知识库

    利用反射实现ASP.NET控件和数据实体之间的双向绑定,并且在客户端自动验证输入的内容是否合法 asp.net报表解决方法 SQLDMO类的使用 SQL过程自动C#封装,支持从表到基本存储过程生成 使用SQLDMO控制 SQL Server 使用SQL...

Global site tag (gtag.js) - Google Analytics