前几天遇到的一个面试题,关于中文字符截取的问题。IO流的应用

原题记不太清楚了。大概内容:随意输入一段包含中文和英文的文字,现将里面的字符全部提取出来,不能出现提取后中文乱码问题。

看到这个题我第一想法就是用流来解决,因为在Java中有字节流和字符流,如果我用字符流来读取应该就不会出现问题了。源码如下:

Scanner cin=new Scanner(System.in);
	
		String s;
		try {
			System.out.println("请输入字符串,中西结合:");
			s = cin.nextLine();
			char[] c=s.toCharArray();
			CharArrayReader char_reader=new CharArrayReader(c);
			int b;
			while((b=char_reader.read())!=-1)
				System.out.println((char)b);
		} catch (IOException e1) {
			e1.printStackTrace();
		}
		


是用了CharArrayReader字符流。

顺便总结一下IO流的问题:

1、字符流、字节流:主要关键字(Reader、Writer&Stream)

2、输入流、输出流(output&Input)

3、节点流、处理流 (处理流是套在节点流之外的流,用来提供更强大的功能)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值