Java不覆盖原文件写入

FileWriter和FileOutputStream都提供了很多构造方法。

我们以FileOutputStream为例,FileWriter也同理:

我们常用的声明方式是FileOutputStream(File file)创建一个向指定 File 对象表示的文件中写入数据的文件输出流。创建一个新 FileDescriptor 对象来表示此文件连接。若是这样写的话,就会将原文件覆盖。

如果不想覆盖原有文件,那么我们可以选择这样的构造方法:FileOutputStream(File file, boolean append)

创建一个向指定 File 对象表示的文件中写入数据的文件输出流。如果第二个参数为 true,则将字节写入文件末尾处,而不是写入文件开始处。创建一个新 FileDescriptor 对象来表示此文件连接。

下面提供一个实例以供大家参考:

public static boolean logfile(String tableName) throws IOException {
		boolean flag = false;
		byte[] buff = new byte[]{};
		if (isRiskChar(tableName)) {
			String message = "表:\"" + tableName +"\"创建失败:" + "表名中含有无效标识符!" + "\r\n";
			buff = message.getBytes();
			FileOutputStream out = new FileOutputStream("src//ErrorLog.txt", true);
			out.write(buff);
			flag = true;
		}
		return flag;
	}

 


你可能感兴趣的:(java,String,File,byte)