我正在网络驱动器上创建一个文件,然后向其中添加数据。不时写入该文件会失败。有没有一种好方法可以在每次我将数据保存到文件之前检查文件是否可访问,或者是否有一种方法可以检查数据是否已保存?
编辑:现在我在我的代码中使用带有 PrintStream 的 try-catch 块:
try
{
logfile = new File(new File(isic_log), "log_" + production);
//nasty workaround - we'll have a file the moment we assign an output stream to it
if (!logfile.exists())
{
prodrow = production;
}
out = new FileOutputStream(logfile.getPath(), logfile.exists());
p = new PrintStream(out);
if (prodrow != "")
{
p.println (prodrow);
}
p.println (chip_code + ":" + isic_number);
p.close();
}
catch (Exception e)
{
logger.info("Got exception while writing to isic production log: " + e.getMessage());
}
那么可能是 PrintStream 的问题吗?(PrintWriter 和 PrintStream 从不抛出 IOExceptions)