*/ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hljs-comment, .hljs-template_comment, .diff .hljs-header, .hljs-javadoc { color: #998; font-style: italic; } .hljs-keyword, .css .rule .hljs-keyword, .h…
IO流(输入流.输出流) 字节流.字符流 1.字节流: InputStream.OutputStream InputStream抽象了应用程序读取数据的方式: OutputStream抽象了应用程序写出数据的方式: 2.EOF=End 读到-1就读到结尾 3.输入流的基本方法: int b=in.read();读取一个字节无符号填充到int低八位;-1是EOF; in.read(byte[] buf) in.read(byte[] buf,int start,int size) 4.输出流基本方…
字节流 InputStream和OutputStream的子类:FileInputStream 和 FileOutputStream 方法: int read(byte[] b,int off,int len); void write(byte[] b,int off,int len); 字符流 Reader和Writer的子类:FileReader 和 FileWriter 方法: int read(char[] b,int off,int len); void write(char[] b,…
输入流就是文件从硬盘到内存的中间媒介,那么输出流就是文件从内存到硬盘的中间媒介.首先来看看FileOutputStream的继承了哪些类, java.lang.Object java.io.OutputStream java.io.FileOutputStream 具体该类如何实现,我们还是结合以下代码来看. import java.io.*;public class FileOutputStreamTest01{ public static void main(String[] args)th…
在上文中<Java IO(1)基础知识——字节与字符>了解到了什么是字节和字符,主要是为了对Java IO中有关字节流和字符流有一个更好的了解. 本文所述的输出输出指的是Java中传统的IO,也就是阻塞式输入输出(Blocking I/O, BIO),在JDK1.4之后出现了新的输入输出API——NIO(New I/O或Non-blocking I/O),也就是同步非阻塞式输入输出,再到后面随着NIO的发展出现了新的异步非阻塞式的输入输出——AIO. 本文将对BIO,即阻塞式输入输出的字节流以…
目录 一.前言 二.字节操作和字符操作 三.两种方式的效率测试 3.1 测试代码 3.2 测试结果 3.3 结果分析 四.字节顺序endian 五.综合对比 六.总结 一.前言 所谓IO,也就是Input/Output.Java程序跟外部进行的数据交换就叫做Java的IO操作.程序中数据的输入输出,被抽象为流, 按照相对于程序的流向,可分为输出流和输入流. 按照数据流的格式,可分为字节流和字符流.Java IO流的体系很庞大,功能丰富. 本文主要探讨了Java中字节操作和字符操作的区别. 二.字…
字符流为何存在 既然字节流提供了能够处理任何类型的输入/输出操作的功能,那为什么还要存在字符流呢?容我慢慢道来,字节流不能直接操作Unicode字符,因为一个字符有两个字节,字节流一次只能操作一个字节.如果JAVA不能直接操作字符,我会感到JAVA对这个世界满满的恶意,所以提供对直接的字符输入/输出的支持是很有必要的,因为我们的口号是:一次编写,到处运行. 字符流的概念 输出字符流:把要写入文件的字符序列(实际是unicode码元序列)转为指定编码方式下的字节序列,然后在写入文件中. 输入字符流…
因为工作事宜,又有一段时间没有写博客了,趁着今天不是很忙开始IO之路:IO往往是我们忽略但是却又非常重要的部分,在这个讲究人机交互体验的年代,IO问题渐渐成了核心问题. 一.File类 在讲解File类之前,我们先认识和了解一下流的概念:流的概念可能比较抽象,可以想象一下水流的样子. 1.流 IO在本质上是单个字节的移动,而流可以说是字节移动的载体和方式,它不停的向目标处移动数据,我们要做的就是根据流的方向从流中读取数据或者向流中写入数据. 想象下倒水的场景:倒一杯水,水是连成一片往地上流动,而…
一.File类: 在Windows下的路径分隔符(\)和在Linux下的路径分隔符(/)是不一样的,当直接使用绝对路径时,跨平台会报No Such file or diretory异常. File中还有几个与separator类似的静态常量,与系统有关,在编程中应尽量使用. ps:File file = new File("G:"+ File.separator +"demo.txt"); File类是java.io包中唯一一个与文件本身操作有关的类,文件本身操作是…
1.File类 File类可以在程序中 操作文件和目录.File类是通过建立File类对象,在调用File类的对象来进行相关操作的. 示例: public class Demo01 { public static void main(String[] args) { File f = new File("f:/我的歌声里.txt"); //访问文件名相关 String name = f.getName(); System.out.println("文件名:" + n…