千家信息网

如何使用BufferedReader读取TXT文件中数值并输出最大值

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,本篇内容主要讲解"如何使用BufferedReader读取TXT文件中数值并输出最大值",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何使用Buffere
千家信息网最后更新 2026年11月01日如何使用BufferedReader读取TXT文件中数值并输出最大值

本篇内容主要讲解"如何使用BufferedReader读取TXT文件中数值并输出最大值",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何使用BufferedReader读取TXT文件中数值并输出最大值"吧!

    BufferedReader读取TXT文件中数值输出最大值

    1.题目

    txt文件中数字的读取,并输出最大值

    输出最大值92

    2.BufferedReader 介绍

    • BufferedReader 是缓冲字符输入流。它继承于Reader。

    • BufferedReader 的作用是为其他字符输入流添加一些缓冲功能。

    BufferedReader 函数列表:

    BufferedReader(Reader in)BufferedReader(Reader in, int size) void     close()void     mark(int markLimit)boolean  markSupported()int      read()int      read(char[] buffer, int offset, int length)String   readLine()boolean  ready()void     reset()long     skip(long charCount)

    3.思路

    • 打开文件

    • 使用BufferedReader读取

    • readLine读取每一行,保存到新个 String 变量中

    • 将String中的数字,转换成数组

    • 从数组中比较出最大值

    4.问题

    BufferedReader的readLine()方法是阻塞式的, 如果到达流末尾, 就返回null, 但如果client的socket末经关闭就销毁, 则会产生IO异常.,使用后要记得close

    使用readLine依次读取各行,处理后输出,如果用以下方法,则会出现除第一行外行首字符丢失,原因就在于br.read() != -1 这判断条件上。 因为在执行这个条件的时候其实它已经读取了一个字符了,然而在这里并没有对读取出来的这个字符做处理,所以会出现少一个字符,如果你这里写的是while(br.readLine()!=null)会出现隔一行少一行!

    String str  = null;br=new BufferedReader(new FileReader(fileName));while(br.read()!=-1){  str = buf.readLine()); }

    java.lang.NumberFormatException: For input string: " "这里的Integer.valueOf(s2[i]);参数里开头和结尾不能含有空格

       for(int i=0;i

    5.解决

    直接上代码了。。。。。

    package test; import java.io.*; public class testtwo {                public static void main(String[] args) throws IOException {               try {                       //1.打开文件                       FileReader fr=new FileReader("test.txt");                       //2.使用BufferedReader读取                       BufferedReader br=new BufferedReader(fr);                       //保存数据                       String message = "";                         String line = null;                         while((line = br.readLine()) != null) {                               message = message+" "+line;                         }                       //去掉两端空格                       message = message.trim();                   //转化成数组                       String s2[]=message.split(" ");                       int a[]=new int[message.length()];                       for(int i=0;i

    6.小结一下

    • 使用BufferedReader中readLine一行一行的读取txt中数字

    • 使用line将要丢失的一行,先保存起来,就不会丢失了

    • String.trim()将数据两端的空格给去掉了

    使用BufferedReader读取文件的好处

    • 没有缓冲区时,每次读取操作都会导致一次文件读取操作(就是告诉操作系统内核我要读这个文件的这个部分,麻烦你帮我把它取过来)。

    • 有缓冲区时,会一次性读取很多数据,然后按要求分次交给上层调用者。

    读取块大小通常是按最适合硬件的大小来读的,因为对于硬件来说,一次读取一块连续数据(比如 1K)和一次读取一个字节需要的时间几乎是一样的(都是一次读操作,只是最终提交的数据量有差异)。带缓冲的 I/O 和不带缓冲的相比效率差异是非常显著的,你可以自行写程序测试。

    说到java reader缓存,其实有两层缓存:

    OS缓存,把磁盘数据 读入内存,通过read ahead, io scheduler等减少磁盘读取次数.

    App缓存,做缓存/预读,即BufferredReader的角色.

    BufferredReader的作用:我的理解

    1、减少System Call次数

    2、减少磁盘读取次数

    到此,相信大家对"如何使用BufferedReader读取TXT文件中数值并输出最大值"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

    文件 最大 最大值 输出 一行 数据 缓冲 字符 缓存 数值 数字 数组 方法 次数 磁盘 空格 两端 作用 内容 大小 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 苏州找大状互联网科技有限公司 互联网中国科技 广州互联网科技公司 狮子座互联网科技 互联网与新科技 互联网高科技股票 一五八零互联网科技 天扬科技互联网广告 富国互联网科技创新基金 科技与互联网的利与弊 隆华科技工业互联网 小米互联网科技园设置 彤创互联网科技有限公司 南平创想时代互联网科技有限公司 华夏恒生互联网科技013171 互联网科技的全部知识 互联网科技如何创业 智帮互联网科技公司最近动向 江苏苏星互联网科技有限公司 广州三三互联网科技有限公司 互联网科技有限公司图片 菲比寻常互联网科技 互联网金融监管科技 太原新华互联网科技学校怎么样 开一家科技互联网公司需要多少钱 中和天地互联网科技有限公司 互联网科技平台产品运营 中国互联网公司的科技投入 米泉互联网科技专业怎么样 瑞安市蟠桃会互联网科技有限公司
    0