
public static void main(String[] args) throws IOException { // 字节流的写操作 FileOutputStream f = null; try { f = new FileOutputStream("a.txt"); // 注意:1、如果文件不存在,会创建文件在写,前提是路径名必须正确,否则会报FileNotFoundException(系统找不到指定路径的错) // 2、写之前会清空文件原来的内容,如果不想清空原内容,而是在原内容后追加写入, // 需要FileOutputStream f = new FileOutputStream("a.txt",true),第二个参数就是追加续写的开关,如果不写默认清空 // 如果为true,那么创建对象的这行代码就不会清空文件 // 方法1:一次写一个字节,参数是int类型,对应码表 f.write(97); byte[] arr = {97, 98, 99, 100, 101, 102, 103, 104, 105}; // 方法2:一次写一个字节数组 f.write(arr); // 方法3:一次写一个字节数组的一部分,2表示从数组的第2个元素开始写,5表示写5个元素 f.write(arr, 2, 4); // 换行 windows是\r\n ,linux是\n ,mac是\r f.write(97); f.write("\r\n".getBytes()); f.write(98); f.write("\r\n".getBytes()); f.write(99); // 写完数据后要释放资源 f.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { // finally里的代码一定会被执行,除非JVM停止 if (f != null) { try { f.close(); } catch (IOException e) { e.printStackTrace(); } } } }