blu*_*609 3 apache io android readlines fileutils
在尝试使用 Android Studio 使用 Apache commons IO 第三方 API 时,我偶然发现了这个问题。
基本上,当我尝试调用FileUtils.readLines()方法时,有 3 个选项:
第一个选项已经被弃用,这意味着我不应该再使用它,所以我只输入readLines(file,null)但是,现在的问题是 Android Studio 不知道我使用哪个 readLines() 方法签名m 使用是因为readLines(file,null)对第二个和第三个方法签名都有效。
下面的屏幕截图进一步解释了我的意思:
任何人都可以请教我吗?如何告诉 Android Studio 我想用于FileUtils.readLines()的特定方法签名?
IDE 无法猜测您的 null 是什么。无论是字符串还是字符集。您可以尝试以下操作:
String encoding=null;
FileUtils.readLines(file, encoding);
Run Code Online (Sandbox Code Playgroud)
但我认为这是行不通的,因为readLines方法需要知道您的文件使用什么编码。因此,例如,如果您的文件使用 UTF-8,您可以这样写
FileUtils.readLines(file, StandardCharsets.UTF_8);
Run Code Online (Sandbox Code Playgroud)
或者您可以尝试使用默认字符集,请参阅: 如何在 Java 中查找默认字符集/编码?
正如 Apache 文档所说,不推荐使用的版本 readLines(File file) 使用默认字符集。你可以写这个来得到一个等价的:
FileUtils.readLines(file, Charset.defaultCharset());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2225 次 |
| 最近记录: |