Cn整理IO基础

/* File f=new File();
*
* File f=new File("e:\\a.txt");
f.exists();//判断存在不在
f.mkdirs();//创建
f.getPath();//获得相对路径
f.delete()//删除
f.listFiles(filter);//文件数组
f.list();//该文件下所有子目录的字符串数组

--------------------------------------------------------------------------------------
* 流:
*
*
*
*
*
*
* 创建文件:创建时候先判断,如果不存就直接创建(目的源写入)
* File f=new File("D:\\IO");
if(f.exists()){
f.mkdirs();
}
*
*
*
*
* 字节流:
* FileInputStream f=new FileInputStream("e:\\a.txt");
FileOutputStream fo=new FileOutputStream("e:\\");
* 字节缓冲区:
*
BufferedInputStream in=new BufferedInputStream(括号内放流);
BufferedOutputStream out=new BufferedOutputStream(括号内放流);

*
*
* 字符流:
* FileWriter fw=new FileWriter("D;\\a.txt");
FileReader fr=new FileReader("D;\\a.txt");
*
* 字符缓冲区
* BufferedReader buff=new BufferedReader(括号内放流);
BufferedWriter buffe=new BufferedWriter();

自定义缓冲区:
byte[]b=new byte[1024*1024];//1M 的缓冲区
*
* 字节和字符转换:
* InputStreamReader reader=new InputStreamReader(); //把字节读取流转换成字符读取流
*
OutputStreamWriter writ =new OutputStreamWriter(); //把字节读取流转换成字符读取流
* 键盘读取:
* 键盘输入的是字符,System.in.需要放在字符转换流中
* 同样System.out也是
*
* 读写:
* 思路:先去读源文件。读完了就写
* 边读编写
* 分割文件思路:
* 主要是的通过自定义缓冲区大小来切割文件
* (******)主要是把写出流定义到while()
*
*
FileInputStream file=new FileInputStream(new File("E:\\ID3.mp3"));//读取源
byte[]b=new byte[1024*1024];//自定义缓冲大小
int len=0;
File f=new File("D:\\mp7");//创建文件夹
if(f.exists()){
f.mkdirs();
}
int count=1;
FileOutputStream out=null;
while((len=file.read(b))!=-1){
out=new FileOutputStream(new File(f,(count++)+".mp3"));//循环一次产生一个流
out.write(b,0,len);

}
out.close();//关流
file.close();

* ------------------*********--重要的------------------------------------------
* 这样再读取或者写入,分割时候可以写配置文件:
* 用到集合
*
* Properties pps = new Properties();
*
* 经常是和写配置文件有关系的,
* 直接把加载到输出流中写出去
* pps.setProperty(key, value);键值对形式存在的。
*
* pps.load(inStream);//从流中下载下来
* pps.store(输出流, 起个名字);//加载到集合
*
*
*

2016/05/13日整理:

学习不能当成任务!喜欢就是干!!!不喜欢也要干!!

* */

时间: 2024-10-16 13:04:47

Cn整理IO基础的相关文章

java中的IO基础总结

java中的I/O类库设计可谓是比较丰富的,在我们平时的编程中也经常接触到,往往大部分的系统都有对IO操作的一些封装代码,平时要用到往往翻翻api或者找个写好的方法复制就搞定,由此带来的是对java本身提供的这些方法不熟悉,平时不好好梳理下,对java的io包下面这些常用类也就比较凌乱了.所以这里通过api文档和java.io下面的源码去整理下. 1.表示字节输入输出流的所有类的超类(InputStream/OutputStream) 构造方法:InputStream() 创建一个输入的stre

Java之------IO基础到加强(二)

RandomAccessFile 1.随机访问文件,自身具备读写的方法 new RandomAccessFile()之后,若文件不存在会自动创建,存在则不创建.--该类其实内部既封装了字节输入流,又封装了字节输出流. 该类若用write()方法写整数,每次只写它的最后一个字节.而采用writeInt()方法,则可把一个整数完整地写入. 2.通过skipBytes(int x),seek(int x)来达到随机访问 通过seek方法设置数据的指针就可以实现对文件数据的随机读写.InputStrea

笔记之_Java整理IO流

线程重复执行: ScheduledExecutorService exec = Executors.newScheduledThreadPool(1); exec.scheduleAtFixedRate(线程名, 1, 1, TimeUnit.SECONDS); 字符输出流writer写完后要执行flush()方法,不然内容不存在 IO流:实时交互 Socket网络交互 多线程和socket合为一体 所有软件几乎都会有多线程,所有跟网络有关的必须要使用socket 大多数的程序只能循环运行单独的

面试题整理----Java基础

1.JDK 和 JRE 有什么区别? JRE是运行时环境   给需要运行Java程序的人使用 JDK是Java开发工具包 包含JRE   给开发人员使用 2.== 和 equals 的区别是什么? ==比较的是内存地址 equals比较的是值 3.两个对象的 hashCode()相同,则 equals()也一定为 true,对吗? 不对,equals为true时hashcode一定为true 4.final 在 java 中有什么作用? 可以修饰类  方法   变量 修饰类时  类不可以被继承 

IO基础

一:IO流整体说明? 用的是装饰模式,装饰模式有四个角色,分别是通用接口.本原.抽象装饰.具体装饰,因为是将本原聚合到了装饰中,所以可以将本原或装饰通过构造子注入到另一个装饰,多个装饰可以随意的组合,形成一个综合的功能对象. io流分为输入流及输出流,输入流是文件到内存,输出流是内存到文件. 流分为低层流及高层流,在实例化高层流时必须通过构造子将低层流注入到高层流中.输入流通用的方法是read(),read(char[]),read(byte[]),readline. 输出流的通用方法是writ

第10章 同步设备I/O和异步设备I/O(2)_同步IO和异步IO基础

10.3 执行同步设备I/O (1)对设备读写操作的函数 ①ReadFile/WriteFile函数 参数 描述 hFile 文件句柄 pvBuffer 指向要接收文件数据的缓冲区或把缓冲区数据写入设备 nNumbytesToRead 要读取的字节数或写入的字节数 pdwNumBytes 实际读取的字节数或写入的字节数 pOverlapped 指向OVERLAPPED结构体. ①要进行同步读写时,该参数为NULL,同时打开设备的时候,标志不能指定为FILE_FLAG_OVERLAPPED. ②要

Java IO 基础

早上复习了IO.NIO.AIO相关的概念,将其中一些要点记录一下. 从编程语言层面 BIO | NIO | AIO 以Java的角度,理解,linux c里也有AIO的概念(库),这些概念不知道什么原因被炒火起来,这里只从Java角度入手. BIO,同步阻塞式IO,简单理解:一个连接一个线程 NIO,同步非阻塞IO,简单理解:一个请求一个线程 AIO,异步非阻塞IO,简单理解:一个有效请求一个线程 BIO 在JDK1.4之前,用Java编写网络请求,都是建立一个ServerSocket,然后,客

java io基础(java.io)

首先流分为输入和输出流,java分为字节流和字符流 1.字节输入流io.InputStream io.InputStream是一个抽象类它实现了Closeable接口的抽象类.那么它的子类(io包下)有ByteArrayInputStream,FileInputStream,FilterInputStream,PipedInputStream ByteArrayInputStream是一个字节数组作为缓冲区. FileInputStream主要用于文件,参见File类可以发现File对象不仅仅是

IO(基础知识)

   输出不一定非要输出到文件中,也可以输出到内存中,如:ByteArrayOutputStream.输入流的read方法是从流里面读出来数据,    输出流的write方法时将内存中的数据写入到流中,方便输出出去. 1. Java通过流来完成输入输出. 2. 从功能上分为两大类:输入流和输出流 从流结构上可分为字节流(以字节为处理单位或称面向字节)和字符流(以字符为处理单位或称面向字符) 3. 字节流的输入流和输出流基础是InputStream和OutputStream这两个抽象类,字节流的输