有人可以从技术上解释下面代码的功能

时间:2018-01-19 12:05:48

标签: java selenium-webdriver testng-dataprovider

File src = new File(filePath);
FileInputStream fis = new FileInputStream(src);
XSSFWorkbook wb = new XSSFWorkbook(fis);
XSSFSheet sheet1 = wb.getSheetAt(0);

为什么他们将src对象传递给FileInputStream?

为什么他们将FileInputStream对象传递给xssfworkbook?

为什么他们没有为xssfsheet传递任何对象?

2 个答案:

答案 0 :(得分:1)

只是为了好玩。关键的想法是阅读文档和学习语言

File src = new File(filePath);

Java File类以抽象方式表示文件和目录路径名。此类用于创建文件和目录,文件搜索,文件删除等。https://www.tutorialspoint.com/java/java_file_class.htm

FileInputStream fis = new FileInputStream(src);

FileInputStream从文件系统中的文件获取输入字节。可用的文件取决于主机环境。 https://docs.oracle.com/javase/7/docs/api/java/io/FileInputStream.html

XSSFWorkbook wb = new XSSFWorkbook(fis);

SpreadsheetML工作簿的高级表示。这是大多数用户构建的第一个对象,无论他们是在阅读还是编写工作簿。它也是创建新工作表/等的顶级对象。 https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFWorkbook.html

XSSFSheet sheet1 = wb.getSheetAt(0);

获取给定索引处的XSSFSheet对象。 https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFWorkbook.html

答案 1 :(得分:0)

  

为什么他们将src对象传递给FileInputStream?

因为FileInputStream需要File来实例化。 srcFile的实例。

  

为什么他们将FileInputStream对象传递给xssfworkbook?

因为XSSFWorkbook需要FileInputStream来实例化。 fis是FileInputStream

  

为什么他们没有为xssfsheet传递任何对象?

因为可以使用wbgetSheetAt检索工作表。