使用Java从CSV的‘x’行和‘y’列读取值,可以按照以下步骤进行操作:
java.io.BufferedReader
和java.io.FileReader
。BufferedReader
对象,并使用FileReader
将CSV文件加载到该对象中。例如:BufferedReader reader = new BufferedReader(new FileReader("file.csv"));
reader.readLine()
逐行读取CSV文件内容,直到达到目标行数('x'行)。可以使用一个计数器来跟踪当前行数。例如:int lineCount = 0;
String line;
while ((line = reader.readLine()) != null) {
lineCount++;
if (lineCount == x) {
break;
}
}
String.split()
方法将行拆分为列,然后使用索引获取目标列的值。例如:String[] columns = line.split(",");
String value = columns[y - 1]; // 注意索引从0开始,所以需要减1
BufferedReader
对象,释放资源。例如:reader.close();
完整的Java代码示例如下:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class CSVReader {
public static void main(String[] args) {
int x = 3; // 目标行数
int y = 2; // 目标列数
try {
BufferedReader reader = new BufferedReader(new FileReader("file.csv"));
int lineCount = 0;
String line;
while ((line = reader.readLine()) != null) {
lineCount++;
if (lineCount == x) {
String[] columns = line.split(",");
String value = columns[y - 1];
System.out.println("目标值:" + value);
break;
}
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
请注意,以上代码仅适用于CSV文件中每行的列数固定且以逗号分隔的情况。如果CSV文件的格式不同,可能需要进行适当的修改。此外,还可以使用第三方库(如Apache Commons CSV)来更方便地处理CSV文件。
领取专属 10元无门槛券
手把手带您无忧上云