java - 在 Java 中将 File[] 转换为 String[]

标签 java arrays string file selenium

我有这个代码

File folder = new File("F:\\gals");
File[] listOfFiles = folder.listFiles();  

此代码返回文件夹 F:\gals 中所有文件的位置数组,我尝试在 selenium 代码中使用此位置

driver.findElement(By.id(id1)).sendKeys(listOfFiles[1]);

我看到错误

The method sendKeys(CharSequence...) in the type WebElement is not applicable for the arguments (File)

所以我想我必须将 listOfFiles[] 转换为字符串数组,请告诉我简单的方法来做到这一点。谢谢

最佳答案

您不需要转换整个数组。只需调用 FilegetAbsolutePath() 方法:

driver.findElement(By.id(id1)).sendKeys(listOfFiles[1].getAbsolutePath());

但是如果你确实想转换整个数组,这里是 Java 8 的方法(由@RemigiusStalder 简化):

String listOfPaths[] = Arrays.stream(listOfFiles).map(File::getAbsolutePath)
        .toArray(String[]::new);

关于java - 在 Java 中将 File[] 转换为 String[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34652515/

相关文章:

c - C语言中如何比较数组

c - 为什么要在字符串数组中添加空字符?

c++ - 在 C++ 中将字符与字符串的组成部分进行比较时出现错误

java - 如何在 Java 中验证字符串?

java - 是否可以在 Java 中为枚举创建动态代理?

Java:转换数据类型

java - 获取所有受马影响的字段作为点数组

hash - 你会用散列表示的东西的真实世界例子是什么?

java - 我应该如何使用正则表达式拆分我的字符串?

java - C++ 与 Java 性能对比