文件输出流:
java.io.FileOutputStream 使用文件输出流向文件中写入数据
构造器:
FileOutputStream(String path) 创建文件输出流对指定的path路径表示的文件进行写操作,如果该文件不存在则将其创建出来
FileOutputStream(File file) 创建文件输出流对指定的file对象表示的文件进行写操作,如果该文件不存在则将其创建出来
-
java.io.InputStream:所有的字节输入流的超类,其中定义类读取数据的方法,因此将来不管读取的是什么设备(链接该设备的流)都有这些读取的方法 因此我们可以用相同的方法读取不同设备中的数据
int read():读取一个字节,以int形式返回,该int值的”低八位”有效,若返回值为-1则表示EOF
int read(byte[ ] data):尝试最多读取给定数组的length个字节并存入该数组,返回值为实际读取到的字节量
文件输入流:
java.io.FileInputStream 使用文件输入流向读取文件中数据
构造器:
FileInputStream(String path) 创建文件输入流对指定的path路径表示的文件进行读操作
FileInputStream(File file) 创建文件输入流对指定的file对象表示的文件进行读操作
-
java.io.OutputStraeam:所有字节输出流的超类,其中定义了写出数据的方法
void write(int d):写出一个字节,写的是给定的int的"低八位"
void write(byte[ ] data):将给定的字节数组中的字节全部写出
void write(byte[ ] data,int offset,int len):将给定的字节数组中从offset处开始的连续len个字节写出
package io;
import java.io.FileOutputStream;
import java.io.IOException;
/**
*Java IO
*/
public class FOSDemo {
public static void main(String[] args) throws IOException {
//向当前项目目录下的文件fos.dat中写入数据
FileOutputStream fos = new FileOutputStream("./fos.dat");
//向文件中写入1个字节,write方法会将给定的int值对应的2进制的"低八位"写出
fos.write(1);//
fos.write(2);
fos.write(255);
fos.write(256);
//当IO操作完毕后要关闭
fos.close();
}
}
-----------------------------------------------------------------------
package io;
import java.io.FileInputStream;
import java.io.IOException;
/**
* 文件输入流
* 用于从文件中读取字节的流
*/
public class FISDemo {
public static void main(String[] args) throws IOException {
FileInputStream fis = new FileInputStream("fos.dat");
/*
inr read()
读取一个字节,以进入形式返回该字节内容。int值只有“低八位”有数据,高24位全部补0
有一个特殊情况:如果返回的int值为-1,则表示EOF
EOF:end of file 文件末尾
*/
int d = fis.read();
System.out.println(d);//1
d = fis.read();
System.out.println(d);//2
d = fis.read();
System.out.println(d);//255
d = fis.read();
System.out.println(d);//0
}
}