我试图在
Java中实现以下操作,我不知道如何:
/*
* write data (Data is defined in my package)
* to a file only if it does not exist, return success
*/
boolean writeData(File f, Data d)
{
FileOutputStream fos = null;
try
{
fos = atomicCreateFile(f);
if (fos != null)
{
/* write data here */
return true;
}
else
{
return false;
}
}
finally
{
fos.close(); // needs to be wrapped in an exception block
}
}
是否存在已经存在的可以用于atomicCreateFile()的函数?
编辑:呃,我不知道File.createNewFile()是否足以满足我的需要.如果我调用f.createNewFile(),然后在它返回的时间和我打开文件之间写,别人删除了该文件怎么办?有没有办法我可以创建文件并打开它来书写锁定,一举一动?我需要担心吗?