首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >导致java中的PosixFilePermission的UnsupportedOperationException

导致java中的PosixFilePermission的UnsupportedOperationException
EN

Stack Overflow用户
提问于 2017-11-14 06:42:07
回答 1查看 2.5K关注 0票数 4

我在windows和unix系统中部署了一个java代码,我必须添加文件权限,以便使用PosixFilePermission将文件移动到特定目录(在unix中).I am。

代码语言:javascript
运行
复制
                file1 = new File( expFilePath+ "/" + creationDate);
                file1.mkdir();
                Set<PosixFilePermission> perms = new HashSet<>();
                perms.add(PosixFilePermission.OWNER_READ);
                perms.add(PosixFilePermission.OWNER_WRITE);
                perms.add(PosixFilePermission.OWNER_EXECUTE);
                perms.add(PosixFilePermission.OTHERS_READ);
                perms.add(PosixFilePermission.OTHERS_WRITE);
                perms.add(PosixFilePermission.OTHERS_EXECUTE);
                perms.add(PosixFilePermission.GROUP_READ);
                perms.add(PosixFilePermission.GROUP_WRITE);
                perms.add(PosixFilePermission.GROUP_EXECUTE);
                try {
                    Files.setPosixFilePermissions(file1.toPath(), perms);
                } catch (IOException e1) {
                    e1.printStackTrace();
                }

上述代码在unix中正确运行,但在windows /C中导致UnsupportedOperationException,我必须在windows /c中运行代码时手动注释这段代码。

有任何方法可以检测java中的底层os类型并有条件地执行这段代码吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-14 07:00:29

如果有Path对象,则可以使用Path.getFileSystem()方法获取基础文件系统对象。它有一个FileSystem.supportedFileAttributeViews()方法。如果文件系统支持POSIX文件属性(和权限),则返回的集合将包含字符串"posix"

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47279223

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档