LineNumberReader的简单介绍与使用

TouchSocket TcpService:构建高性能Tcp服务的终极利器 / 接收到的数据data");// 回复客户端await ((ITcpSessionClient)client).SendAsync("服务端已收到消息!");// 继续执行后续插件TouchSocket的TCPService以极简的API、强大的扩展性和卓越的性能,重新定义了.NET TCP服务的开发体验。无论是物联网平台还是金融级实时通信系统,TCPService均能提供可靠的基础设施支持。立即探索示例项目,开启你的高性能服务开发之旅!扩展阅读如何实现WebSocket服务? 阅读详情

LineNumberReader这个类,继承于BufferedReader类。

在这里插入图片描述

相比于BufferedReader类,LineNumberReader这个类多了跟踪行号的功能,它定义了setLineNumber(int)和getLineNumber()方法,分别起到设置行号和获取行号的作用。默认情况下,行编号从0开始,所以一开始获取行号,就是0了,每当换行一次,就会+1,这样来记录行号的。比如,我们调用了setLineNumber(int)方法,那么文件指针会跳转到指定的行吗?答案是:不会!因为,它只是起到了设置LineNumber的值的作用,仅此而已!
一个行被认为是由一个换行符(’\n’),一个回车符(’\r’),或者后跟一个换行符的回车符中的任何一个终止。
比如,我们想从1开始记录行号,就可以在read方法之前,reader.setLineNumber(1)即可。这样,每当换行,比如跳到第二行时,就会+1.getLineNumber()方法获取的值就是2了。

public class BufferedReaderTestClient1 {
    public static void main(String[] args) {
        try (LineNumberReader reader = new LineNumberReader(new InputStreamReader(new FileInputStream("Test1"), "GB2312"))) {
            String line;
            while ((line = reader.readLine()) != null) {
                // 此时, lineNumber已经从0加1了。因为,每次遇到换行符,就会+1.
                System.out.println("第" + reader.getLineNumber() + "行:line = " + line);
            }
        } catch (Exception exception) {
        }
    }
}

如果,你需要记录行号,就可以考虑使用LineNumberReader类。因为呐,Java跨平台嘛!

那些换行符啥的判断,人家帮你做了,你就不用再费心了,直接用得了。

但是,别想着,它可以帮助你跳到你想去的那一行:

    public void setLineNumber(int lineNumber) {
        this.lineNumber = lineNumber;
    }

setLineNumber方法,它没有那个能力!

盖了帽了!!!

基于STM32F427的模拟SSI协议绝对式编码器位置反馈通信 阅读详情

相关推荐

用Python手把手教你实现一个多层感知机(MLP)——从理论到代码实战

本文详细介绍了如何使用Python和Theano库从零开始实现多层感知机(MLP),涵盖从核心原理到代码实战的全过程。通过构建隐藏层、输出层和完整MLP模型,结合权重初始化、激活函数选择和训练技巧,帮助开发者深入理解神经网络工作机制,并应用于实际机器学习任务。

web39explorer的博客 970

LineNumberReader

LineNumberReader LineNumberReader是一个可以获得和设置行好的缓冲字符输入流。 LineNumberReader继承自BufferedReader。 构造方法:LineNumberReader(Reader in) 使用默认输入缓冲区的大小创建新的行编号。 它有两个特殊的方法: public int getLineNumber() :获得当前行号。 public void setLineNumber(int lineNumber) :设置当前行

m0_46484836的博客 2433

COCOS 3.8 接入高德定位SDK

/微信登录所必须的code。//是否获得code。

八喜互动 1993

(每日持续更新)jdk api之LineNumberReader基础、应用、实战

记录当前行号。返回当前行号。设置当前行号。int read()读取下一个字符的数据。读取字符到字符数组中。读取一行文本。跳过指定数量的字符。标记当前位置。重置到最后一次调用mark方法的位置。关闭输入流。

a89879193的专栏 1352

CentOS7无网环境实战:MySQL8.0完整离线安装与避坑指南(附依赖包下载)

本文详细介绍了在CentOS7无网环境下MySQL8.0的完整离线安装流程,包括依赖包获取、系统预处理、MySQL二进制安装、服务配置与优化等关键步骤。特别针对离线安装的特殊需求,提供了从依赖包下载到服务调优的全链路解决方案,帮助用户在企业内网或隔离环境中高效部署MySQL数据库。

bush的博客 175

ROS2实战:手把手教你用walking机器人仿真实现医院多楼层自动配送(含实时地图切换)

本文详细介绍了如何利用ROS2和walking机器人仿真平台实现医院多楼层自动配送系统,重点讲解了动态地图切换技术和多楼层导航的实现方法。通过实时加载地图和优化电梯过渡策略,解决了医院复杂环境下的自主配送难题,为医疗物流自动化提供了实用解决方案。

weixin_29090917的博客 362

java.io.LineNumberReader类介绍

是 Java 中一个用于读取文本行并记录行号的字符输入流类。它是java.io包的一部分,并且继承自。提供了一种方便的方法来读取输入流中的行,同时自动记录每一行的行号。BufferedWriter 的缓冲机制使得读取操作更加高效,尤其是在处理大型文本文件时。

qq_27390023的博客 431

软件可靠性测试与评价

本文系统介绍了软件可靠性工程的核心内容,包括可靠性概念、模型分类、测试方法和评价体系。重点解析了可靠性测试的三大步骤:定义运行剖面、设计测试用例和实施测试收集数据,并以智能安防系统为例说明具体应用。可靠性评价需结合业务场景,通过量化指标(MTBF、失效率等)和模型预测持续优化系统。文章强调可靠性需贯穿软件全生命周期,通过闭环反馈实现持续改进,为关键系统提供质量保障。

moton2017的博客 2050

Java基础之LineNumberReader

package cn.itcast.p6.io.charstream.linenumber; import java.io.FileReader; import java.io.IOException; import java.io.LineNumberReader; public class LineNumberReaderDemo { /** * @param args * @throws IOException */ public static void main(String

独狼的博客 433

OceanSim: 基于Isaac Sim GPU 加速水下机器人感知仿真框架

OceanSim 采用先进的基于物理的渲染技术,对水下视觉和声学传感器进行精确建模。与其他模拟引擎相比,OceanSim 的渲染速度要快得多。作为 NVIDIA Issac Sim 的扩展,OceanSim 采用了多功能设计。通过融入快速发展的 NVIDIA Omniverse 生态系统,我们的模拟器自然而然地在机器人学习和水下机器人技术之间架起了一座桥梁,从而促进了水下应用中体现型人工智能技术的开发和部署。OceanSim 将以开放源码的方式提供,使研究界能够以合作的模式作出贡献。

机器人控制与仿真应用 2050

Agisoft Metashape 基于RTK技术的无人机航测免像控技术流程

利用无人机进行航空摄影测量,其使用方便、快速获得成果,已经是测绘行业外业生产的主要方式。RTK定位系统的出现,其厘米级的定位系统,使得航测无人机在作业时,能够准确获取拍照时的GPS位置,能够大量减少像控点,即使不使用像控点也能满足规范对精度的要求。可以有效解决特殊地形(如山川、峡谷、河流、沼泽、水库等)外业人员很难布设像控点的情况。

penglu366366的博客 2188

java获取文件行数_LineNumberReader获取文件行数

package io;import java.io.FileReader;import java.io.LineNumberReader;public class LineNumberReaderTest {public static void main(String[] args) throws Exception{int lineNumber = getFileLineNumber("D:/P...

weixin_33448981的博客 1103

SAP_MM&FI模块-质保金标准解决方案详解

主要讲述了SAP系统质保金的标准实现方案,包含业务背景、后台配置、前台业务操作记录,以及关键点的AI解释;

风沙的博客 685

java语言读取文本文件的指定行

代码如下:import java.io.*;public class hh { /** * @param args */ public static void main(String[] args) { // 指定读取的行号 int lineNumber = 2; // 读取文件 //File

yaowenqian99的专栏 1万+

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

LineCount

import java.io.*; public class LineCount { public static void main(String[] args) throws IOException { LineNumberReader LNumReader= new LineNumberReader(new FileReader("Text.txt"));...

weixin_33766168的博客 1517

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

LineNumberReaderDemo

import java.io.*; class LineNumberReaderDemo { public static void main(String[] args)throws IOException { FileReader fr = new FileReader(“PersonDemo.java”); LineNumberReader lnr = new LineNumberReader(fr); String line = null; lnr.setLineNumber(100); w

moxi233的博客 122

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

杂乱无章

 /**//**     * 判断字符串是否是空     *      * @param string     * @return boolean     */    public boolean empty(String string) ...{        if (string == null) ...{            return true;        }       

待定的专栏 608

多线程统计多文件的行数和耗时时间的Java程序

题目:编写一个Java程序,分别为每一个文件创建一个线程,并使用这些线程同时来为所有的文件统计行数及耗时的时间。package je3.thread;import java.io.*;public class LineCounter extends Thread {    String filename;    public LineCounter(String filename){ 

bigfish518的专栏 835

java获取mac地址

程序很简单,但是很有意思。 [code="java"] import java.io.InputStreamReader; import java.io.LineNumberReader; public class get_mac { public static void main(String[] args) { // TODO Auto-generated me...

yoyofish0001的博客 91

统计java类中方法_写一个程序计算一个.java文件中有多少个类和方法,以及方法和类的代码行数...

展开全部importjava.io.*;importjava.util.*;publicclassDemo{publicstaticvoidmain(String[]args)throwsException{StringpathName="D:\\MaxDemo.java";LineNumberReaderbnr=newLineNumberReader(new...

weixin_33735281的博客 529

java统计文件夹(工程下)有多少文件和文件行数(附趣闻一则)

import java.io.*; public class CountOfLines { public static void main(String[] args) { f(new File("E:\\Users\\17315\\Workspaces\\Idea2018\\read-xml-demo\\src\\main\\java\\com\\example\\demo\\ReadXmlFileTest")); } private static void f

weixin_43495390的博客 833

java 按行读取文件

package test; import java.io.*; import java.util.*; public class ReadTest { public static List first_list; public static List second_list; public ReadTest() { first_list = new LinkedList<>();

Phoenix_FuliMa 1351

BufferedReader子类LineNumberReader装饰类的简单介绍

个人感觉这个类其实没什么特殊的功能,只有很少的时候会使用到其中的功能其中有这么两个多出来的功能 setLineNumberpublic void setLineNumber(int lineNumber)设置当前行号。 参数:lineNumber - 指定行号的 int 值另请参见:getLineNumber()getLineNumberpublic int getLineNumber()获

Blue的博客 1128

Java使用LineNumberReader读取文件指定行遇到的坑

在利用LineNumberReader读取文件指定行的时候,遇到了一个很有意思的问题,该问题极易忽略,而且极易犯错,先看代码: // 文件内容的总行数 static int getTotalLines(File file) throws IOException { FileReader in = new FileReader(file); LineNumberReader reade...

weixin_39309402的博客 4721

Java LineNumberReader getLineNumber()方法及示例

LineNumberReader类的getLineNumber()方法 (LineNumberReader Class getLineNumber() method) getLineNumber() method is available in java.io package. getLineNumber()方法在java.io包中可用。 getLineNumber() method is us...

cumudi0723的博客 1373

Java LineNumberReader skip()方法与示例

LineNumberReader类skip()方法 (LineNumberReader Class skip() method) skip() method is available in java.io package. skip()方法在java.io包中可用。 skip() method is used to skip the given number of characters from...

1807
上一篇: 利用InputStreamReader和OutputStreamWriter进行文件转码
下一篇: 简单说一下DataInputStream和DataOutputStream这两个流
盖了帽
博客等级 码龄8年 17粉丝 62原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值