我正在尝试通过单击复选框然后单击删除按钮来删除用户选择的消息,但我不明白为什么我的代码没有执行理想的结果。这是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方法。但它没有做任何事情,也没有任何例外。我在做什么?
答案 0 :(得分:2)
尝试
Message msg = inbox.getMessage(j);
msg.setFlag(Flags.Flag.DELETED, true);
if (msg.isSet(Flags.Flag.DELETED))
{
inbox.close(true);
return true;
}