这两天要和别的公司数据同步,搞了个ftp下载数据导入自己库里。刚开始找了个ftp工具类,测试的时候是好的(我们公司自己的服务器(2003)),用对接公司ftp地址的时候就出问题了:
1)
try{
URL u=new URL(ftp://username:pwd@ip/文件名);
String _file=u.getFile();
System.out.println(_file+">>>"+u.getHost());
InputStream is= u.openStream();
if(is == null){
System.out.println("没有能够获取指定的资源");
return;
}else{
BufferedReader in = new BufferedReader(new InputStreamReader(is));
StringBuffer buffer = new StringBuffer();
in.readLine(); //读取第一行,接下来从第二行开始循环数据
String line = "";
while ((line = in.readLine()) != null) {
System.out.println(line);
}
//System.out.println(buffer.toString());
}
}catch(Exception e){
e.printStackTrace();
}
报如下错误
java.io.FileNotFoundException:xxxx.txt
at sun.net.www.protocol.ftp.FtpURLConnection.getInputStream(FtpURLConnection.java:441)
at java.net.URL.openStream(URL.java:1009)
at test.ftp.ftpWriteAndRead.tt(ftpWriteAndRead.java:41)
at test.ftp.ftpWriteAndRead.main(ftpWriteAndRead.java:30)
可是文件是存在的
2)
try {
FtpClient fc = new FtpClient("xxx.xxx.xxx.xxx");
fc.login("username", "pwd");
int ch;
File fi = new File("d:\\MANAGER_20120523.txt");
RandomAccessFile getFile = new RandomAccessFile(fi, "rw");
getFile.seek(0);
TelnetInputStream fget = fc.get("/MANAGER_20120523.txt");
DataInputStream puts = new DataInputStream(fget);
while ((ch = puts.read()) >= 0) {
getFile.write(ch);
}
fget.close();
getFile.close();
fc.closeServer();
} catch (IOException ex) {
ex.printStackTrace();
}
报如下错误
java.io.FileNotFoundException: EPRT |1|192.168.xxx.xxx|58029|: 550 'EPRT |1|xxx.xxx.xxx.xxx|38965|': command not understood. Use EPSV command.
at sun.net.ftp.FtpClient.readReply(FtpClient.java:236)
at sun.net.ftp.FtpClient.issueCommand(FtpClient.java:193)
at sun.net.ftp.FtpClient.openDataConnection(FtpClient.java:420)
at sun.net.ftp.FtpClient.get(FtpClient.java:577)
at test.ftp.ftpDown.main(ftpDown.java:44)
xxx:是ip地址
一直都这没到解决方案
后来在网上有找了一个common-net(说明一下,后来发现上面那种导入的包路径是:sun.net.ftp.FtpClient,后来这种是:org.apache.commons.net.ftp.FTPClient),所用的jar包不一样
针对上面的那位知道解决办法,可以把代码贴出来,也让大家学习一下
可以用的代码见附件
针对上面错误的问题有知道的可以发表一下意见,交流一下
分享到:
相关推荐
FTP上传下载文件
windows c++简单的 ftp上传下载
一个支持FTP上传下载的类。 支持窗口显示和线程控制
关于VC++ FTP上传下载的操作 包含有XML文件操作类
ftp上传下载工具上传下载工具ftp上传下载工具ftp上传下载工具ftp上传下载工具ftp上传下载工具ftp上传下载工具ftp上传下载工具ftp上传下载工具ftp
ftp上传下载器
VisualC 实效编程 99 FTP上传下载VisualC 实效编程 99 FTP上传下载VisualC 实效编程 99 FTP上传下载VisualC 实效编程 99 FTP上传下载VisualC 实效编程 99 FTP上传下载VisualC 实效编程 99 FTP上传下载VisualC 实效...
ftp上传下载 linux环境下程序 网络高级程序设计课程实验
qt ftp上传下载。博客地址 https://blog.csdn.net/sinat_33859977/article/details/99564157
利用C# 实现ftp上传下载 文件 文件夹等操作
用纯VB API实现的FTP上传下载的类,可以指下载,上传有进度控制,在公司里以应用相当长时间,比较稳定。代码结构清晰,附带一调用示例。
ftp上传下载java代码,代码完整 都是自己编写的
FTP上传下载 C#源代码,建议大家下载看一下再评论FTP上传下载 C#源代码,建议大家下载看一下再评论
FTP上传下载的实现,网络编程 FTP SOCKET MFC 网络
FlashXP+FTP上传下载工具破解版
ftp上传下载的好工具 已经是破解的了 不需要注册 你只需要连接自己的ftp就可以了 剩下的就不用说了吧
12.FTP上传下载文件演示(Visual C++编程 源代码)12.FTP上传下载文件演示(Visual C++编程 源代码)12.FTP上传下载文件演示(Visual C++编程 源代码)12.FTP上传下载文件演示(Visual C++编程 源代码)12.FTP上传...
FTP上传下载,上传文件的类型及文件大小都放到调用此类的方法中去检测,比如放到前台JAVASCRIPT中去检测等
MFC实现的利用ftp上传和下载文件的完整程序代码,包括客户端和服务器端,希望能够给需要的人以参考!
本程序在VS2010环境下进行开发,程序用C# WinForm实现了FTP上传下载(可实现上传所选目录下的所有文件)并带上传进度条,程序会在运行根目录下自动生成日志文件以方便查看信息...本程序主要由socket进行通信...程序由...