【发布时间】:2014-08-20 20:58:10
【问题描述】:
我有一个小部件,允许用户将电子邮件消息或文件拖放到小部件中,以将其复制到他们的文件系统中。这是 OpenNTF 中的 FileExplorer 项目,由比我更有经验的人设计。如果当前文件名已经存在于他们放置它的位置,我想修改它以提供新的文件名。对于电子邮件,我希望能够获取发件人和日期,但是当我在拖放电子邮件期间尝试访问文件内容时,我一直在抛出错误。
所以,我的问题其实很简单。我有'if'来确定文件名是否被采用,但我不知如何测试文件名的多个选项(比如编号然后'file1.eml','file2.eml','文件 3.eml')。我尝试在下面插入 DUPLICATE 这个词,但我不高兴。
try {
if (source.isDirectory()) {
File dirTarget = new File(fDest.getAbsoluteFile() + File.separator + source.getName());
if (!dirTarget.exists()) {
dirTarget.mkdir();
}
copyDir(monitor, source, dirTarget);
}
if (source.isFile()) {
File dest = new File(fDest.getAbsolutePath() + File.separator + source.getName());
if (dest.getAbsolutePath().compareTo(source.getAbsolutePath()) != 0) {
copyFile(monitor, source, dest);
} else {
dest = new File(fDest.getAbsolutePath() + File.separator + "DUPLICATE" + File.separator + source.getName());
copyFile(monitor, source, dest);
}
}
} catch (IOException e) {
}
供参考,copyFile方法的参数是
private void copyFile(IProgressMonitor monitor, File fSource, File fTarget) throws IOException
【问题讨论】:
-
不是 XPages 问题。 Notes 客户端和 Java
标签: java eclipse rcp lotus-notes