2014-02-09 51 views
0

我有一个使用Selenium WebDriver Java自动化的场景:
一个网页包含一些客户数据。它有一个链接转换为PDF转换为安全的PDF格式的客户名单。我必须确认PDF文档中列出的客户列表是根据网页中显示的列表。Java - 读写Pdf,在浏览器窗口内呈现

Selenium WebDriver具有与浏览器DOM中存在的元素进行交互的功能。因此,为了与浏览器窗口内部呈现的PDF文档进行交互,我需要一些其他Java实用程序来检索该PDF文档中存在的数据。如果有人遇到类似的事情,请帮助。先谢谢了。

感谢,
Sitam

+1

你的意思是你在服务器验证它所服务的PDF到客户端浏览器之前?或者在客户端被渲染的时候?或者,pdf是否包含客户端浏览器发布到服务器的表单,并且您必须验证发布的数据? – mkl

+0

我必须在客户端浏览器上验证pdf。基本上情况是:浏览器页面上有打印链接。点击后,它会在浏览器窗口中呈现pdf文档。我必须验证该PDF文档中的内容。 –

+0

如何在客户端浏览器中执行Java程序?在不同的标签或窗口中的servlet?一个单独的Java程序? (或者,您是否真的指浏览器中的Java Script或PDF中的文件?) – mkl

回答

1

从PDF文件阅读,你可以使用传统的FileReader API。

import java.io.*;  

public class FileRead { 


    public static void main(String[] args) throws IOException { 


     File f=new File("C:\\Documents and Settings\\abc\\Desktop\\abc.pdf"); 

     OutputStream oos = new FileOutputStream("test.pdf"); 

     byte[] buf = new byte[8192]; 

     InputStream is = new FileInputStream(f); 

     int c = 0; 

     while ((c = is.read(buf, 0, buf.length)) > 0) { 
      oos.write(buf, 0, c); 
      oos.flush(); 
     } 

     oos.close(); 
     System.out.println("stop"); 
     is.close(); 

    } 
} 

您可以将此流传递给用户界面,或者您可以直接将文件路径传递到用户界面,通过它可以访问该文件。 要编写或更新PDF文件,您可以使用itext/pd4ml libraries.Both工作很好。

链接:

Itext

PD4ML