Java:从FTP服务器删除文件错误

时间:2015-11-07 23:58:51

标签: java ftp

我正在为一些朋友恢复FTP客户端,它基本上已经完成,但是我有一个程序从中删除文件。我有一个运行删除功能的按钮,它获取列表的选定值,将其放入一个删除它的字符串,但它不起作用。 :/

以下是我的代码的一部分:(对不起任何不良约定)

JLlist:

public void jlist() {
    //JList, list
    try {
        String[] files = ftpClient.listNames();
        for(String item: files){
            model.addElement(item);
        }
        listScroller = new JScrollPane(list);
        list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
        list.setLayoutOrientation(JList.VERTICAL);
        list.setVisibleRowCount(3);
        listScroller.setPreferredSize(new Dimension(250, 80));
        listScroller.setBounds(115, 10, 450, 530);      
    }catch(IOException e){}

}

删除:

public void delete(){

    String deletef = fileChooser.getSelectedFile().toString();
    try{
    ftpClient.deleteFile(deletef);
    System.out.println(deletef);
    boolean deleted = ftpClient.deleteFile(deletef);
    if (deleted) {
        connected.setText("File has been deleted.");
        model.removeElement(deletef);
    }

    }catch(IOException e){
        connected.setText("Something went wrong; try again"); 
    }

提前致谢!

2 个答案:

答案 0 :(得分:0)

您必须使用AJAX,不能使用Java删除。

您可以使用Apache FTPClient执行此操作以及FTP上的所有其他命令。使用这样的东西:     ... FTPClient client = new FTPClient(); client.connect(host, port); client.login(loginname, password); client.deleteFile(fileNameOnServer); client.disconnect(); ...

你去了,没有得到赞扬,只是在快速搜索中找到它。

答案 1 :(得分:0)

首先,您使用了两次deleteFile方法

ftpClient.deleteFile(deletef);
System.out.println(deletef);
boolean deleted = ftpClient.deleteFile(deletef);

第二,是否正在删除文件(如果你检查不使用其他FPT程序)? 这意味着,第一次使用deleteFile调用是否正常工作,第二次尝试是异常?