我有一个文件夹中的文件列表,我想锁定一个特定的文件(用户向我发送要锁定的文件的名称),我的操作如下:try { File file = new File("filename"); FileChannel channel = new RandomAccessFile(file, "rw").getChannel(); FileLock lock = channel.lock(); try { lock = channel.tryLock(); } catch (OverlappingFileLockException e) { // File is already locked }} catch (Exception e) {}如果另一个用户想查看文件列表,我必须告诉他们文件的状态,哪个是锁定的,哪个是未锁定的 File folder = new File("E:\\folder_to_LIST_OF_FILES"); File[] listOfFiles = folder.listFiles(); for (int i = 0; i < listOfFiles.length; i++) { if (listOfFiles[i].isFile()) { FilesDto returnDto = new FilesDto(); returnDto.setFileName(FilenameUtils.removeExtension(listOfFiles[i].getName())); // Check File Status if file is Locked or unlocked if (lock==null) { returnDto.setStatus("unlocked"); returnDto.setFilePath(listOfFiles[i].getAbsolutePath()); } else { returnDto.setStatus("Locked"); } returnDtoList.add(returnDto); } }这两个片段来自不同的 API。如何检查文件被锁定或解锁的状态?
添加回答
举报
0/150
提交
取消