inputstreamreader读取文件_java读取字符串中每一个字符

inputstreamreader读取文件_java读取字符串中每一个字符二.字符流1.单个字符读取publicstaticvoidmain(String[]args){ try{ InputStreamReaderin=newInputStreamReader( newFileInputStream(“D:\\bf\\Desktop\\test.txt”),”UTF-8″); intn; while((n…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

二.字符流
1.单个字符读取

public static void main(String[] args){
		try {
			InputStreamReader in = new InputStreamReader(
					new FileInputStream("D:\\bf\\Desktop\\test.txt"), "UTF-8");
			int n ;
			while((n = in.read()) != -1){
				System.out.print((char)n); 
			}
			in.close();
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		 
	}

单个字符读取结果
2.按行读取,利用BufferedReader对象提供的readLine()方法

public static void main(String[] args) {
		BufferedReader reader=null;
		try {
			InputStreamReader read = new InputStreamReader(new FileInputStream("D:\\bf\\Desktop\\test.txt"), "UTF-8");
			reader = new BufferedReader(read);
			String line=null;
						
			while((line =reader.readLine()) != null){
				System.out.println(line);						
			}			
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {			
			e.printStackTrace();
		}finally {
			if (reader !=null) {
				try {
					reader.close();
				} catch (IOException e) {					
					e.printStackTrace();
				}
			}
		}
		
	}

按行读取结果
InputStreamReader是一个一个字符读取的,每次读取都会执行一次IO,IO操作很浪费时间,这就导致程序效率降低,而BufferedReader可以一次读取大量的数据,大大减少了IO次数,提升效率。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/189346.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • win7彻底卸载iis

    win7彻底卸载iis

    2021年10月12日
  • 《欧美剧集观看最佳索引》【2006-9-24更新】

    《欧美剧集观看最佳索引》【2006-9-24更新】 allyesno:我在上两个月说要做一个美剧的网站由于最近公司的事情一直很繁忙我没有时间去做自己都积累了一大堆美剧日剧恐怖片没看两个电脑的硬盘都塞的满满的呵呵真是天长地久有时尽,此恨绵绵无绝期。哈哈~“我现在正在构思是不是把美剧网站列入公司的发展计划的一部分来做这样我的兴趣和工作就能结合在一起而且也能得到更大的硬件平台以及人力资源的支持一切都在

    2022年8月10日
  • Git 设置仓库指定忽略的文件

    Git 设置仓库指定忽略的文件

    2022年4月3日
  • 跟我学Telerik公司的RadControls控件(四)

    跟我学Telerik公司的RadControls控件(四)
    朋友们、同行们通过前面《跟我学Telerik公司的RadControls控件》系列三篇的学习,你一定会内心有一种涌动,有种相见(RadControls)恨晚的感觉。那就一起加入学习RadControls控件的行列,为IT的朋友提供更加明了化的技术大餐,欢迎……
      今天我将和你分享另一个更加完美的技术控件(TelerikRadTreeview)控件:  RadTreeview 是一个功能非常丰富的Asp.Net控件。它可以让具有层次结构的数据的显示,管理,导航变得轻而易举,该产品提供

    2022年7月24日
  • 如何理解cicd

    如何理解cicd项目开发可以分为这几个过程编码->构建->集成->测试->交付->部署首先引用一个例子譬如说,你开了一家公司,雇了很多码农在一起写代码。你说,要用Gitlab做代码管理。当一个码农在自己的开发机上写好代码之后,要合并到主分支里,他首先要发起一个MergeRequest(MR),这会在一个特定服务器上触发一次对他提交的代码的检查,包括代码格式检查、依赖关系检查以及单元测试等一系列检查,等通过了全部检查,他就可以将代码合并到主分支,否则他需

    2022年5月7日
  • Windows + Linux 双系统的安装

    Windows + Linux 双系统的安装Windows+Linux双系统的安装参考自https://blog.csdn.net/flyyufenfei/article/details/79187656参考自https://blog.csdn.net/u012052268/article/details/77145427文章目录Windows+Linux双系统的安装1.准备工作1.1U盘启动盘的制作1.2分配磁…

    2022年7月24日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号