嗨我的URL有一个小问题,我需要验证PDF文件,我必须先下载。我使用下面的代码:
URL TestURL2 = new URL("file:///C:/Users/Ludek/Downloads/katalog_dokument_53766_test.pdf");
BufferedInputStream TestFile = new BufferedInputStream(TestURL2.openStream());
PDFParser TestPDF2 = new PDFParser(TestFile);
TestPDF2.parse();
String TestText2 = new PDFTextStripper().getText(TestPDF2.getPDDocument());
try {
assertTrue(TestText2.contains("Text PDF"));
System.out.println("it's OK");
} catch (Error e) {
verificationErrors.append(e.toString());
System.out.println("not OK!!!");
}
但文件名中的数字53766每次都不同。我可以使用一些通配符或其他东西吗? 有人可以告诉我吗?感谢
答案 0 :(得分:1)
如果您的文件夹中只有一个文件 - 您的pdf,则可以使用与此类似的代码:
string[] files = System.IO.Directory.GetFiles(@"C:/Users/Ludek/Downloads/", "*.pdf");
在下载过程之前,您始终可以删除文件夹中的所有文件,甚至始终指定一个唯一的下载文件夹,这样只有您的文件可以存在,并且您可以确定验证时。
答案 1 :(得分:0)
我使用这个解决方案,它很简单并且有效。
File f = new File("C:/Users/Ludek/Downloads/");
FilenameFilter textFilter = new FilenameFilter() {
public boolean accept(File dir, String name) {
return name.toLowerCase().endsWith(".pdf");
}
};
File[] files = f.listFiles(textFilter);
for (File file : files) {
String URL = file.getCanonicalPath().substring(25);
URL TestURL2 = new URL("file:C:/Users/Ludek/Downloads/" + URL);