码迷,mamicode.com
首页 > 其他好文 > 详细

IO流demo--【J2SE】

时间:2015-09-19 22:29:27      阅读:233      评论:0      收藏:0      [点我收藏+]

标签:

转换流:

InputStreamReader和OutputStreamWriter用于字节数据到字符数据之间的转换。

InputStreamReader需要和InputStream套接。

OutputStreamWriter需要和OutputStream套接。

转换流在构造时可以指定其编码集合。

 

		import java.io.*;
		public class TestTransForm1{
			public static   void main(String[] args){
				try{
					OutputStreamWriter osw=new OutputStreamWriter(//字符流流向字节流的桥梁
						new FileOutputStream("d:\\bak\\char.txt"));//文件输出流是用于将数据写入 File 或 FileDescriptor 的输出流
						osw.write("microsoft ibmsunapplehp");
						System.out.println(osw.getEncoding());
						osw.close();
						osw=new OutputStreamWriter(
							new FileOutputStream("d:\\bak\\char.txt",true),
							"ISO8859_1");
							osw.write("microsoft ibmsunapplehp");
							System.out.println(osw.getEncoding());//返回此流使用的字符编码的名称。
							osw.close();
							
				}catch (IOException e){
							e.printStackTrace();//打印出异常和更深层次的调用信息。
						}
					}
				
			

}

 

 

		import java.io.*;
		public class TestTransForm2{
			public static void main(String[] args){
				InputStreamReader isr=new InputStreamReader(System.in);
				BufferedReader br=new BufferedReader(isr);
				String s=null;
				try{
					s=br.readLine();//输入一个数
					while(s!=null){
						if(s.equalsIgnoreCase("exit"))break;// 将此 String 与另一个 String 比较,不考虑大小写
						System.out.println(s.toUpperCase());//使用默认语言环境的规则将此 String 中的所有字符都转换为大写。
						s=br.readLine();//     读取一个文本行。
						
					}
					br.close();
					
				}catch (IOException e){
					e.printStackTrace();//打印出所有的调用情况和错误信息
				}
			}
		}

 技术分享

 

数据流:

DataInputStream和DataOutputStream分别继承自InputStream和OutputStream,它属于处理流。需要套接在InputStream和OutputStream类型的结点流上。

DataInputStream和DataOutputStream提供了可以存取与机器无关的Java原始类型数据的方法。

 

		import java.io.*;
		public class TestDataStream{
			public static void main(String[] args){
				ByteArrayOutputStream baos=new ByteArrayOutputStream();//此类实现了一个输出流,其中的数据被写入一个 byte 数组
				// 创建一个新的数据输出流,将数据写入指定基础输出流。
				DataOutputStream dos=new DataOutputStream(baos);
				
				try{
					dos.writeDouble(Math.random());
					dos.writeBoolean(true);
					ByteArrayInputStream bais=new ByteArrayInputStream(baos.toByteArray());
					System.out.println(bais.available());
					DataInputStream dis=new DataInputStream(bais)		;
					System.out.println(dis.readDouble());
					System.out.println(dis.readBoolean());
					dos.close();
					dis.close();
					
				}catch(IOException e){
					e.printStackTrace();
				}
			}

}

 技术分享

 

IO流demo--【J2SE】

标签:

原文地址:http://www.cnblogs.com/wangmei/p/4822312.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!