【Java文本文件处理】如何在读取文本文件时添加和识别回车符

【需求】

在文本解析程序需要回车符作为结束符号,故需在读取程序中添加回车,并在解析程序中识别。

【示例文本】

夏日绝句
李清照
生当作人杰
死亦为鬼雄
至今思项羽
不肯过江东
2022年8月23日20点58分
END

【代码】

复制代码
package crintxtfile;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;

public class Test {
    public static void main(String[] args) throws Exception{
        final String txt=readTextFromFile("C:\\Users\\ufo\\Desktop\\夏日绝句.txt");
        final char[] arr=txt.toCharArray();
        
        for(int i=0;i<arr.length;i++) {
            char ch=arr[i];
            
            if(ch==13) { // 识别回车符
                System.out.println(String.format("位于%d处的字符为回车符", i));
            }
        }
    }
    
    public static String readTextFromFile(String filePath) throws Exception{
        File file=new File(filePath);
        if(!file.exists()) {
            throw new Exception(String.format("File:%s does not exist.", filePath));
        }
        
        StringBuilder sb=new StringBuilder();
        BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(filePath), "UTF-8"));  
        String line = null;  
        while( ( line = br.readLine() ) != null ) {
            sb.append(line+"\r");// 在行末尾主动添加回车符
        }
        br.close();  
        return sb.toString();
    }
}
复制代码

【输出】

位于7处的字符为回车符
位于14处的字符为回车符
位于24处的字符为回车符
位于34处的字符为回车符
位于44处的字符为回车符
位于54处的字符为回车符
位于76处的字符为回车符
位于80处的字符为回车符

END

posted @   逆火狂飙  阅读(818)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
历史上的今天:
2016-08-23 启用CentOS6.5 64位安装时自带的MySQL数据库服务器
2016-08-23 【Canvas与艺术】环形橄榄枝纹饰
2016-08-23 如何修改MyEclipse项目的web context-root
2016-08-23 【高中数学/基本不等式】已知:正实数a,b皆大于0,且a+b=1 求:1/a+1/ab的最小值
2013-08-23 如何解决Win7将任务栏程序自动分组的困扰
2013-08-23 安装Ubuntu 桌面版 12.04 LTS 过程之记录
2013-08-23 #lspci | grep Eth
生当作人杰 死亦为鬼雄 至今思项羽 不肯过江东
点击右上角即可分享
微信分享提示