FileOutputStream用于写入原始字节流,如图像数据。要编写字符流,请考虑使用FileWriter。
文件输出流是将数据写入文件或文件描述符的输出流。文件是否可用或是否可以创建取决于底层平台。特别是某些平台,一次只允许一个FileOutputStream(或其他文件写入对象)打开一个文件进行写入。在这种情况下,如果所涉及的文件已打开,则此类中的构造函数将失败。
public class FileOutputStreamDemo {
public static void main(String[] args) throws IOException {
//将in.txt里的内容以追加方法写入out.txt
FileInputStream inputStream =
new FileInputStream(new File("D:\\jdk_s_d\\in.txt"));
FileOutputStream outputStream =
new FileOutputStream(new File("D:\\jdk_s_d\\out.txt"), true);
byte[] b = new byte[1024];
int len;
while ((len = inputStream.read(b)) != -1){
outputStream.write(b,0 , len);
}
inputStream.close();
outputStream.close();
}
}
FileOutputStream和FileInputStream一样,在创建的时候主要做了两件事,一个是new一个FileDescriptor(文件描述符),一个便是调用了open方法。
同时,FileOutputStream也有一个相同的静态代码块。
private static native void initIDs();
static {
initIDs();
}
源码(1.8)
/**
* @since JDK1.0
*/
public
class FileOutputStream extends OutputStream