0

我试图通过单击复选框然后单击删除按钮来删除用户选择的消息,但我不明白为什么我的代码没有执行理想的结果。这是Javamail中的代码:

public static boolean deleteMessage(int j) throws Exception
 { 

 store = session.getStore("pop3");
store.connect("localhost", "red","red");



 inbox = store.getFolder("INBOX");
inbox.open(Folder.READ_WRITE);


    msgs[j].setFlag(Flags.Flag.DELETED, true); // set the DELETED flag

      if (msgs[j].isSet(Flags.Flag.DELETED))
    {
    inbox.close(true);
    return true; 
    }
    return false;
}

上述方法是根据用户选择删除的消息数量每次调用。如果用户选择了两条消息要删除,那么它将被调用两次。通过调用方法类将这些数字作为参数传递给 deleteMessage 方法。但它没有做任何事情,也没有抛出任何异常。我在做什么错?

4

1 回答 1

2

尝试

Message msg = inbox.getMessage(j);
msg.setFlag(Flags.Flag.DELETED, true);
if (msg.isSet(Flags.Flag.DELETED))
{
    inbox.close(true);
    return true;
}
于 2009-11-01T08:56:41.623 回答