如何阻止Octave移除用户输入中的反斜杠?
解决Octave中输入文件路径丢失反斜杠的问题
直接修改你的input函数调用,添加第二个参数's',就能让输入的路径原样保留反斜杠:
filePath = input("File Path: ", 's');
为什么原来的代码会丢反斜杠?
Octave默认的input函数会把用户输入当作Octave表达式解析,反斜杠\在表达式里是转义字符,会被自动处理掉(比如\I不会被当作普通字符,而是被解析后去掉反斜杠)。加上's'参数后,函数会把输入直接当作纯字符串读取,完全保留原始输入的所有字符,包括反斜杠。
额外提示
- 用这个方法后,用户不需要给路径加单引号,直接复制粘贴Windows格式的路径(比如
C:\Users\Name\File.txt)就行,脚本会正确存储带反斜杠的路径。 - 如果你之前要求用户加单引号,现在可以去掉这个提示,避免用户输入多余的引号到路径里。
内容的提问来源于stack exchange,提问作者Benjamin Paxson
相关产品推荐
相关产品推荐

