下面是详细的攻略:
1. 引入依赖
在使用 Files.readLines()
之前,我们需要先引入相应的依赖包。
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>30.1-jre</version>
</dependency>
2. 读取文件
使用 Files.readLines()
方法读取文件,需要指定文件路径和字符集编码。该方法会返回一个 List<String>
类型的集合,每个元素代表文件中的一行数据。以下是示例代码:
import com.google.common.io.Files;
import java.io.File;
import java.nio.charset.Charset;
import java.util.List;
public class ReadFile {
public static void main(String[] args) throws Exception {
File file = new File("example.txt");
Charset charset = Charset.defaultCharset();
List<String> lines = Files.readLines(file, charset);
for (String line : lines) {
System.out.println(line);
}
}
}
其中,example.txt
是文件的路径,Charset.defaultCharset()
表示使用默认的字符集编码。这段代码会逐行输出文件的内容。
3. 处理异常
如果文件不存在,或者读取文件出现错误,可能会抛出异常。可以使用 try-catch
语句来捕获并处理异常。以下是示例代码:
import com.google.common.io.Files;
import java.io.File;
import java.nio.charset.Charset;
import java.util.List;
public class ReadFile {
public static void main(String[] args) {
File file = new File("example.txt");
Charset charset = Charset.defaultCharset();
try {
List<String> lines = Files.readLines(file, charset);
for (String line : lines) {
System.out.println(line);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
4. 示例
接下来,我提供两个示例来演示如何使用 Files.readLines()
处理文件中的行数据。
示例一
文件 example.txt
内容如下:
apple
banana
orange
我们可以使用以下代码来读取并输出文件内容:
import com.google.common.io.Files;
import java.io.File;
import java.nio.charset.Charset;
import java.util.List;
public class ReadFile {
public static void main(String[] args) throws Exception {
File file = new File("example.txt");
Charset charset = Charset.defaultCharset();
List<String> lines = Files.readLines(file, charset);
for (String line : lines) {
System.out.println(line);
}
}
}
运行结果:
apple
banana
orange
示例二
文件 example.csv
内容如下:
name,age,gender
张三,20,男
李四,22,女
王五,18,男
我们将数据读取到一个二维数组中,并输出第二行第二列的数据。示例代码如下:
import com.google.common.io.Files;
import java.io.File;
import java.nio.charset.Charset;
import java.util.List;
public class ReadFile {
public static void main(String[] args) throws Exception {
File file = new File("example.csv");
Charset charset = Charset.defaultCharset();
List<String> lines = Files.readLines(file, charset);
String[][] data = new String[lines.size()][];
for (int i = 0; i < data.length; i++) {
String[] row = lines.get(i).split(",");
data[i] = row;
}
System.out.println(data[1][1]);
}
}
运行结果:
22
以上就是使用 Files.readLines()
处理文本行数据的攻略,希望能对您有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java中使用Files.readLines()处理文本中行数据方式 - Python技术站