我有一个名为D0000025667-T04292.pdf, D0000025668-T02119.pdf, D0000025670-T01125.pdf
等文件的文件夹。
我有一个MS访问数据库表,其值如下:
**Dealer Code Email**
T04292 a@gmail.com
T04292 a@gmail.com
T02119 b@gmail.com
T01125 b@gmail.com
RS0009 c@gmail.com
RS0001 c@gmail.com
C01020 d@gmail.com
我需要得到经销商'表中的代码和搜索文件夹。最后,我需要将匹配的文件附加到电子邮件中,以发送到数据库中列出的地址,例如经销商代码T04292
匹配需要发送到D0000025667-T04292.pdf
的文件a@gmail.com
。
我有一个邮件功能,我可以直接指定附加文件路径,但现在我需要搜索和匹配需要附加的文件。
答案 0 :(得分:2)
我正在回答一个问题,合并的问题没有用(此外,在其他答案中已经解释了将文件附加到邮件中,例如here)。所以这里是如何找到匹配的文件:
class DealerFilter implements FilenameFilter
{
private final String dealer;
DealerFilter(String dealer)
{
this.dealer = dealer;
}
@Override
public boolean accept(File dir, String name)
{
// uncomment these lines for debugging:
//System.out.println ("dealer: " + dealer);
//System.out.println ("name: " + name);
//System.out.println ("dir: " + dir);
return name.toLowerCase().endsWith("-" + dealer.toLowerCase() + ".pdf");
}
}
// returns null if error, empty array if not found
File[] findDealerPDFs(String directory, String dealer)
{
File dir = new File(directory);
File[] files = dir.listFiles(new DealerFilter(dealer));
if (files == null)
{
// error
return null;
}
for (File f : files)
{
System.out.println(f);
}
return files;
}