Hello World

平行代码

字节流

 1 package com.test;
 2 
 3 import java.io.File;
 4 import java.io.FileInputStream;
 5 import java.io.FileNotFoundException;
 6 import java.io.FileOutputStream;
 7 import java.io.IOException;
 8 import java.io.InputStream;
 9 import java.io.OutputStream;
10 /**
11  * 流是一组有顺序的,有起点和重点的字节集合,是对数据传输的总称和抽象。及数据在两设备之间的传输称为流。
12  * 流的本质是数据传输,根据数据传输特性将流抽象为各种类,以便更直观的进行数据操作。
13  * 处理数据类型:字节流和字符流
14  * 流向不同        :输入流和输出流
15  * @author lcdn
16  *
17  */
18 public class TestByteSream {
19     /**
20      * 字节输入流:从文件向程序中读入数据---读
21      * InputStream类:此抽象类表示字节输入流的所有类的超类
22      * 从文件系统的某个文件中获得输入字节用FileInputStream
23      */
24     public static void read(){
25         File file = new File("e://b.txt");
26         try {
27             //针对文件建立输入流
28             InputStream in = new FileInputStream(file);
29             byte[] bytes = new byte[1024*1024];//定义一个字节数组
30             int len = -1;//每次真实读取的长度
31             StringBuffer buf = new StringBuffer();
32             while((len = in.read(bytes))!=-1){//表示有可读数据
33                 buf.append(new String(bytes,0,len));
34             }
35             in.close();
36             System.out.println(buf);
37         } catch (FileNotFoundException e) {
38             // TODO Auto-generated catch block
39             e.printStackTrace();
40         } catch (IOException e) {
41             // TODO Auto-generated catch block
42             e.printStackTrace();
43         }
44     }
45     /**
46      * 字节输出流:从程序向文件中输出数据---写
47      * OutputStream类:此抽象类是输出字节流的所有类的超类,输出流接收输出字节并将这些字节
48      * 发送到InoutStream类的某个接收器。
49      * 要向文件中输出使用FileOutputStream
50      */
51     public static void write(){
52         File file = new File("e://b.txt");
53         if(!file.exists()){
54             try {//文件可能不可写
55                 file.createNewFile();
56             } catch (IOException e) {
57                 // TODO Auto-generated catch block
58                 e.printStackTrace();
59             }
60         }else{
61             try {
62                 /**
63                  * 针对文件建立输出流
64                  * FileOutStream构造方法之第二参数“true”表示在原有文件的内容上继续写入数据不覆盖,反之
65                  */
66                 OutputStream out = new FileOutputStream(file, true);
67                 String info = "Android之Java基础第二篇!";
68                 //向文件中写入数据
69                 out.write(info.getBytes());
70                 //关闭输出流
71                 out.close();
72             } catch (FileNotFoundException e) {
73                 // TODO Auto-generated catch block
74                 e.printStackTrace();
75             } catch (IOException e) {
76                 // TODO Auto-generated catch block
77                 e.printStackTrace();
78             }
79         }
80     }
81     public static void main(String[] args){
82         //write();
83         read();
84     }
85 }

 

posted @ 2016-01-03 23:15  躬行之  阅读(835)  评论(0编辑  收藏  举报