gpt4 book ai didi

java - 无法以编程方式解析 ${file.separator} 以读取属性路径

转载 作者:行者123 更新时间:2023-12-02 11:40:23 30 4
gpt4 key购买 nike

我正在尝试读取一个包含文件路径的属性,其中包括路径中登录的用户名,如下所示。

test.file = ${file.separator}test${file.separator}${user.name}${file.separator}file.txt

当我在类中使用 @Value 注释读取属性以及在 pom.xml 中将其用作参数时,我能够读取具有操作系统特定路径(/- unix 或 -windows)的文件。

当我从属性文件中将其读取为常规属性时,spring 会将其读取为另一个预期的字符串值。

但是如果我将此值传递给 File 构造函数,${file.separator} 不会得到解析..

在属性文件中表示文件分隔符的最佳方式是什么?我想避免使用 .replace 技术在代码中用 File.separator 替换变量。

最佳答案

如果您只是在寻找与平台无关的文件分隔符,那么我们一直在使用 / 分隔符,没有任何问题。

path=C:/Users/<user_name>/myconfig.properties
path=/Users/<user_name>/myconfig.properties

以下代码在两个系统上始终返回 true。

finput = new File(prop.getProperty("path"));
System.out.println(finput.exists());

关于java - 无法以编程方式解析 ${file.separator} 以读取属性路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48616033/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com