maxscript pathConfig.appendPath 的 bug(特性)
pathConfig.appendPath可以很方便的把2个路径Combine在一起
不管你后面带不带斜杠
pathConfig.appendPath @"C:\try" @"kle.jpg" "C:\try\kle.jpg" pathConfig.appendPath @"C:\try" @"kle.jpg" "C:\try\kle.jpg"
很酷,然后
pathConfig.appendPath @"C:\try" @"$kle.jpg" -- Runtime error: $directory not recognized: $kle.jpg -- MAXScript callstack: -- thread data: threadID:36248 -- ------------------------------------------------------ -- [stack level: 0] -- In top-level
在mxs内部定义了一堆以$开头的模板替换变量,$符号又在windows的允许命名规则内,这本身是一种设计冲突
下面是2种替代方案
(这里不考虑path2开头带斜杠)
fn pathConfig_appendPath path1 path2 = ( if path1[path1.count] != "\\" do path1 += "\\" return (path1 + path2) )
或者去.net里取取经
(dotnetClass "System.IO.Path").Combine @"C:\try" @"$kle.jpg" "C:\try\$kle.jpg"
分类:
MaxScript
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步