I/O 基本类

来源:互联网 发布:删除表的sql语句 编辑:程序博客网 时间:2024/05/22 13:59

1、java只认识保存为(UTF-8)编码的文件

         

一、输入

              1.InputStream



 2、Reader


  3、InputStream 装换成 Reader: InputStreamReader

二、输出

             



 第一:DataOutputStream:重点是整个数据的组合,整体和部分的关系,主要涉及如何保存这些数据。

  1、  如:一个吃饭桌:几个木角+一个台面。

  2、   哪么整个数据:int,double,(字母,汉字,基本一些符号:用readUTF,writeUTF)UTF这些数据类型的数据构成。

              3、当数据保存时:如果是一个int值,就需要占2个字节,如果一个double,就需要占4个字节。

            4、当要保存一个int值,2个字节,如何把值放入到相应空间,如果把这些文件是UTF-16编码,又涉及到

                 Big endian:重要的数据放在低地址

                 Little endian: 重要的数据放在高地址

               读数据:从高地址开始读,所以取出来的结果相反。                                    

第二:PrintStream、PrintWriter:主要是显示问题,即给别人的数据,别人怎么才能看得懂,所以以别人看得懂的格式把自己的东西给别人。

                                     1》像服务方传回给浏览器的.html 文件,这样客户端浏览器才能看得懂。

                                      2》以前我们在一个方法打印出错日志时:经常 out.println("内容"),怎么容易查错,就怎么写。                   

                   PrintStream:主要是输出数据是原始类型+String objects。

                   PrintWriter:输出数据是unicode 编码(即国际化UTF-16或UTF-8 )

                            1>例如:我们从网页上输入 http://www.sohu.com  意思是去这个地址取网页。

                                  接收方返回  <html>  <html> 的文件,

                                 PrintWriter out =response.getWriter();
             java.util.Date today = new java.util.Date();out.println(“<html> “ +
                              “<body>” +
                              “<h1 style=”text-align:center>” +                           
                              “</body>” +
                              “</html>”);
                        }
              }


三、新的NEW I/O,加了一个(Channel,ByteBuffer), 

        写时:把输出的东西(ByteBuffer 的内容 )给通道,通道负责输出。

        读时:通道 把 别人的东西放入ByteBuffer ,

                 read:通知别人把数据放入ByteBuffer ,

                  flip:别人通知ByteBuffer 区已经放入数据。

        

             


  参看资料:

      【1】http://www.cnblogs.com/leesf456/p/5313408.html






0 0
原创粉丝点击