Java读取文本文件中的逗号分隔值并求取每行的最大数值
实现思路
- 遍历已经读取到的每行文本,调用
split(",")方法按逗号将整行切分为单个数值对应的字符串数组 - 将拆分得到的每个字符串元素通过
Integer.parseInt()方法转换为int类型数值,若文本中数值可能存在前后空格,可先调用trim()处理后再转换,避免格式报错 - 对转换后的一组int值计算最大值,可以手动遍历所有元素比对得到最大值,也可以直接使用Stream流的
max()方法快速获取 - 可搜索参考关键词:Java字符串按指定字符分割、Java字符串转整数、Java求数值集合最大值
完整实现代码
import java.io.IOException; import java.util.List; import java.nio.file.Paths; import java.nio.file.Files; public class KnowNotTest1 { public static void main(String[] args) { System.out.println("每行最大值结果如下:"); try{ List<String> fileData = Files.readAllLines(Paths.get("files\\b.txt")); // 遍历处理每一行 for (String line : fileData) { String[] numStrArr = line.split(","); int maxVal = Integer.MIN_VALUE; for (String numStr : numStrArr) { // 转换为整数,trim处理可选,适配可能存在的空格 int currentNum = Integer.parseInt(numStr.trim()); if (currentNum > maxVal) { maxVal = currentNum; } } System.out.println(maxVal); } } catch (IOException e){ e.printStackTrace(); } } }
运行上述代码即可输出你期望的结果。
内容的提问来源于stack exchange,提问作者user16991180
相关产品推荐
相关产品推荐

