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

2022-11-09 15:51:04 浏览数 (3)

大家好,又见面了,我是你们的朋友全栈君。

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

代码语言:javascript复制
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()方法

代码语言:javascript复制
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次数,提升效率。

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

0 人点赞