首页 > 代码库 > Java windows中设置文件只读
Java windows中设置文件只读
windows中如何设置文件只读或隐藏呢?
(1)windows设置文件只读
/*** * 设置为只读 * @param filePath * @return */ public static int readOnly(String filePath){ if(new File(filePath).exists()){ Process p=CMDUtil.executeCmd("attrib "+filePath+" +R"); try { p.waitFor(); } catch (InterruptedException e) { e.printStackTrace(); return SystemHWUtil.NEGATIVE_ONE; } return p.exitValue(); }else{ return SystemHWUtil.NEGATIVE_ONE; } }
(2)去掉文件只读属性
/*** * 设置为可写 * @param filePath * @return */ public static int removeReadOnly(String filePath){ if(new File(filePath).exists()){ Process p=CMDUtil.executeCmd("attrib "+filePath+" -R"); try { p.waitFor(); } catch (InterruptedException e) { e.printStackTrace(); return SystemHWUtil.NEGATIVE_ONE; } return p.exitValue(); }else{ return SystemHWUtil.NEGATIVE_ONE; } }
(3)设置文件隐藏
/*** * 仅适用于windows 系统,会调用本地命令<br> * hide:attrib ".mqtt_client.properties" +H<br> * show:attrib ".mqtt_client.properties" -H * @param filePath * @return */ public static int hide(String filePath){ if(new File(filePath).exists()){ Process p=CMDUtil.executeCmd("attrib "+filePath+" +H"); try { p.waitFor(); } catch (InterruptedException e) { e.printStackTrace(); return SystemHWUtil.NEGATIVE_ONE; } return p.exitValue(); }else{ return SystemHWUtil.NEGATIVE_ONE; } }
(4)去掉文件隐藏属性
/*** * 仅适用于windows 系统,会调用本地命令<br> * hide:attrib ".mqtt_client.properties" +H<br> * show:attrib ".mqtt_client.properties" -H * @param filePath * @return */ public static int show(String filePath){ if(new File(filePath).exists()){ Process p=CMDUtil.executeCmd("attrib "+filePath+" -H"); try { p.waitFor(); } catch (InterruptedException e) { e.printStackTrace(); return SystemHWUtil.NEGATIVE_ONE; } return p.exitValue(); }else{ return SystemHWUtil.NEGATIVE_ONE; } }
(1)(2)(3)(4)依赖的方法:
public static Process executeCmd(String command) { Process p = null; try { p = Runtime.getRuntime().exec(CMD_SHORT + command); } catch (IOException e) { e.printStackTrace(); } return p; }
说明:
CMD_SHORT 的值是:"cmd /c "
SystemHWUtil.NEGATIVE_ONE的值是-1
(5)判断文件或目录subFileStr 是否存在于parentFolderStr(目录)中
/*** * 判断父目录parentFolderStr 是否有文件subFileStr(也可以是目录) * @param parentFolderStr * @param subFileStr * @return : 返回null,说明不存在 */ public static File subFileExist(String parentFolderStr,String subFileStr) { if(!parentFolderStr.endsWith(File.separator)){ parentFolderStr+=File.separator; } File subFolder=new File(parentFolderStr+subFileStr); if(subFolder.exists()){ return subFolder; }else{ return null; } }
说明:如果存在则返回子目录绝对路径;如果不存在,则返回null.
依赖的jar见附件
本文出自 “whuang” 博客,请务必保留此出处http://huangkunlun520.blog.51cto.com/2562772/1599339
Java windows中设置文件只读
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。