IO流
|--字节流
|--字节输入流
InputStream ------抽象类
int read():一次读取一个字节
int read(byte[] bys):一次读取一个字节数组
|--FileInputStream ------extends InputStream
|--BufferedInputStream ------extends FilterInputStream------extends InputStream
|--ByteArrayInputStream ------extends InputStream
|--StringBufferInputStream ------extends InputStream
|--字节输出流
OutputStream ------抽象类
void write(int by):一次写一个字节
void write(byte[] bys,int index,int len):一次写一个字节数组的一部分
|--FileOutputStream ------extends OutputStream
|--BufferedOutputStream ------extends FilterOutputStream------extends OutputStream
|--ByteArrayOutputStream ------extends OutputStream
FileOutputStream的构造方法:
创建一个向指定 File 对象表示的文件中写入数据的文件输出流。,如果文件不存在自动创建文件
- FileOutputStream(File file)
- FileOutputStream(String name)
- FileOutputStream(File file, boolean append) append - 如果为 true,文件追加,false覆盖文件
常用方法:
- public void write(int b):写一个字节
- public void write(byte[] b):写一个字节数组
- public void write(byte[] b,int off,int len):写一个字节数组的一部分
换行符:
* windows:\r\n
* linux:\n
* Mac:\r
FileOutputStream fos=null;
try {
//如果文件不存在自动创建文件
fos=new FileOutputStream("fos.txt",true);
fos.write("bb".getBytes());
fos.write(97);
fos.write("ccc".getBytes(),0,2);
} catch (IOException e) {
e.printStackTrace();
}finally
{
try {
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}