易截截图软件、单文件、免安装、纯绿色、仅160KB

IO与文件读写 Java的IO流架构

【一】基于字节的输入流
值得注意的地方有:
①Level 2的输入流,大多数都会指明数据源的形式:例如ByteArray,File,Piped
②Level 3的输入流,则不会出现具体的数据源名字,而是以功能取代:例如Buffered,LineNumber
所以说Level 3的输入流是对Level 2输入流的“封装和过滤”。实际上Level 2的输入流,都继承于一个叫做:FilterInputStream的输入流。
下面是对各个input stream的简介:
①ByteArrayInputStream
从内存中每次读取一个字节的数据,然后保存到内置的缓冲区中。维持一个计数器用来记录从数据源中读入的字节数目。
调用该输入流的close()方法不会产生任何实际的作用。因为它“关闭”的对象是---内存。而不是文件。不会抛出任何的IOException。
②FileInputStream
从文件系统中读取原始的字节数据(raw bytes)。每次读取一个字节
③PipedInputStream
管道输入流,通常它的一端会和数据源连接,另一端和管道输出流(PipedOutputStream) 连接。这样从管输入流读入的任何数据将直接地传输到管道输出流。
通常会有一个独的线程从管道输入流中读取数据,再交给另外一个线程,由另外的线程向管道输出流中写数据。如果使用单个线程进行读写操作,很容易造成资源的死锁。
④SequenceInputStream
把多个输入流按顺序合并成一个输入流
⑤DataInputStream
从底层的其它字节输入流中读取字节,然后转换成与机器无关的原始类型数据(boolean,byte,char)
⑥BufferedInputStream
为底层的其它字节输入流增加一个“缓冲”的功能,除此之外还可以“标记”,“重置”输入流。当这个输出流的对象被创建时,一个内置的缓冲区也就被创建了。
随着底层的输入流的不断读入,缓冲区中的数据也在不同刷新。一次性地从底层的输入流读入多个字节,方便后续的转码工作
【二】基于字节的输出流
值得注意的是:
①在Level 2的输出流,都是以功能来命名的。例如:Print,DataOutput,Buffered
②在Level 3的输出流,则多数都是以数据源的形式来命名的。例如:ByteArray,File,Piped
所以说Level 2的输出流必须依赖于Level 3的输出流,实际上Level 2的输出流,都继承与一个叫做FilterOutputStream的输出流
下面是对各个output stream的简介:
①PrintStream
为底层的输出流添加额外的功能,令到底层的输出流可以方便地输出各种经过“格式化”的数据。和其它输出流不同,该输


相关文档:

java nio在多线程环境下的恶梦之终结

有人说java nio在多线程环境下编程简直就是个恶梦,其实你如果能把握住java nio API的要领,你就可以将之驾驭.
0. 一个 channal 对应一个SelectionKey in the same selector.
e.g:
SelectionKey sk=sc.register(selector, SelectionKey.OP_READ, handler);
sk==sc.register(selector, SelectionKey.OP_WRITE, handl ......

Java:Struts 项目中web.xml文件配置

 web.xml文件对于配置任何Java Web应用都必需的。
(1)配置Struts的ActionServlet
<servlet><!--元素来声明ActionServlet-->
<servlet-name><!--元素:用来定义Servlet的名称-->
<servlet-class><!--元素:用来指定Servlet的完整类名-->
<servlet>
<servlet-name& ......

java base64编码和解码

import java.io.IOException;
public class test {

/**
* 编码
* @param filecontent
* @return String
*/
public static String encode(byte[] bstr){
return new sun.misc.BASE64Encoder().encode(bstr);
}
/**
* 解码
* @param filecontent
* @return string
*/
public static ......

在Java程序中截获控制台输出

     本文的目标是设计一个基于Swing的JTextArea显示控制台输出。此期间,我们还将讨论一些和Java管道流(PipedInputStream和PipedOutputStream)有关的注意事项。最后还要创建一个能够捕获和显示其他程序(可以是非Java的程序)控制台输出的简单程序。
一、Java管道流
     要在文本 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号