java - 如何构建“零元素”路径?
问题描述
我即将编写一个自定义 FileVisitor 的测试,它需要路径的文件名。
返回: 表示文件或目录名称的路径,如果此路径有零个元素,则返回 null
除了使用模拟 - 我尽量避免 - 我如何构造一个零元素的路径?
- Paths.get("") - 需要一个非空参数,空字符串是一个元素
- new File("").toPath() - 还需要一个非空参数,空字符串也是一个元素
- 像 Paths.get(".") 或 Paths.get("./") 这样的东西也有非零元素
对于所有这些,文件名永远不会为空。
可能这是 Java 中 WindowsFileSystem 实现的一种行为。有谁知道 FileSystem 的其他实现是否表现不同并且实际上有可能 getFileName() 返回 null?
解决方案
(至少在 OSX 上)java.nio.file.Paths.get('/')
会导致这样一个 zero-element sun.nio.fs.UnixPath
。
推荐阅读
- laravel - 手机号码字段的唯一验证
- javascript - 我如何知道 Stream(Node.js、MongoDB)何时准备好进行更改?
- javascript - Lodash Flow 和 TypeScript
- firefox - 在 Firefox 中查看服务器发送的事件
- git - 有没有办法根据条件过滤标签
- python - 应用程序名称在 fbs 和 PyQt5 中显示为未知
- reactjs - 在 useEffect 中设置对象在 React 中不起作用
- python - 如何修复 [Errno 111] 连接被拒绝
- ajax - 如何从浏览器的网络部分隐藏或删除 ajax api 调用?
- javascript - 绘制多个 chart.js 图表(nodejs)