java中ftp上传文件的方法。
fxy1 2005-09-02 12:50:12 现在我在做一个客户端向服务器端利用ftp上传文件的例子,上传代码如下。
public class FtpTest1 {
String filename;String filename1;FtpClient ftpClient;
public void connectServer(String server,String user,String password,String path)
{
//server:FTP服务器的IP地址;user:登录FTP服务器的用户名
//password:登录FTP服务器的用户名的口令;path:FTP服务器上的路径
try{ ftpClient=new FtpClient();
ftpClient.openServer(server);
ftpClient.login(user, password);
System.out.println("login success!");
if (path.length()!=0) ftpClient.cd(path);
ftpClient.binary(); }catch (IOException ex) {System.out.println(ex);}
}
public void closeConnect()
{try{ ftpClient.closeServer();
}catch (IOException ex) {System.out.println(ex);}
}
public void upload()
{ filename1="yy.xls";
// 从filename中分析出文件的名称,作为目标文件的名称,具体方法实现未给出
try {
TelnetOutputStream os=ftpClient.put(filename1);
java.io.File file_in=new java.io.File("yy.xls");
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();
} catch (IOException ex) {System.out.println(ex);}
}
public static void main(String[] args) {
FtpTest1 ftp=new FtpTest1();
ftp.connectServer( "10.218.237.240","soft","soft","");
ftp.upload() ;
ftp.closeConnect() ;
}
}
但执行到这一步TelnetOutputStream os=ftpClient.put(filename1);
总出现java.io.FileNotFoundException: STOR yy.xls: 550 yy.xls: Access is denied. 的错误,为什么,ftp服务器上有这个文件啊!