为什么文件不删除尽管使用删除功能?

时间:2016-11-08 09:26:47

标签: java

      for (int i = 0; i < listOfTempFiles.length; i++) {
                for (int j = 0; j < listOfFAQFiles.length; j++) {
                    if (listOfTempFiles[i].isFile() && listOfTempFiles[i].length() > 0) {
                        if (listOfTempFiles[i].getName().toLowerCase().contains(".pdf")) {
                            if (listOfTempFiles[i].getName().substring(listOfTempFiles[i].getName().lastIndexOf("#") + 1).equals(listOfFAQFiles[j].getName())) {
                                try {
                                    List<InputStream> list = new ArrayList<InputStream>();
                                    list.add(new FileInputStream(listOfTempFiles[i]));
                                    list.add(new FileInputStream(listOfFAQFiles[j]));
                                    System.out.println(listOfTempFiles[i].getName() + "with FAQ: " + listOfFAQFiles[j].getName());
                                    int iend = listOfTempFiles[i].getName().lastIndexOf("#");
                                    if (iend != -1) {
                                        outputFilename = listOfTempFiles[i].getName().substring(0, iend);
                                    }

                                    OutputStream out = new FileOutputStream(new File(finalPDFParh + "/" + outputFilename + ".pdf"));
                                    doMerge(list, out);
                                    boolean flag=listOfTempFiles[i].delete();
                                    System.out.println("Flag----->"+flag);
                                    list.clear();

                                } catch (FileNotFoundException e) {
                                    e.printStackTrace();
                                } catch (DocumentException e) {
                                    e.printStackTrace();
                                } catch (IOException e) {
                                    e.printStackTrace();
                                }

                            }
  public static void doMerge(List<InputStream> list, OutputStream outputStream)
            throws DocumentException, IOException {
        Document document = new Document();
        PdfWriter writer = PdfWriter.getInstance(document, outputStream);
        document.open();
        PdfContentByte cb = writer.getDirectContent();

        for (InputStream in : list) {
            PdfReader reader = new PdfReader(in);
            for (int i = 1; i <= reader.getNumberOfPages(); i++) {
                document.newPage();
                //import the page from source pdf
                PdfImportedPage page = writer.getImportedPage(reader, i);
                //add the page to the destination pdf
                cb.addTemplate(page, 0, 0);

            }
        }

        outputStream.flush();
        document.close();
        outputStream.close();

    }

我希望在与FAQ文件合并后从listofTempFiles中删除原始文件.doMerge methhod合并列表中添加的pdf。我使用了删除功能但是没有删除?我该怎么办?我使用了删除功能。

0 个答案:

没有答案