我们在学习文件的io流中,老师经常讲不同的操作系统路径的文件(夹)名的分割符是不一样的,在windows中是反斜杠“\”,在linux中是正斜杠“/”,但是在一次写BS的简单程序时,却发现windows系统也你能读取正斜杆组成的路径,来看一下发现问题的经过
截取相关的代码,这段代码的主要目的就是获得浏览器发送过来的报文的第一行,并把这第一行打印在后台
通过浏览器发送请求,访问服务器
后台得到的结果
承接上面部分的代码,这段代码的意思是通过传过来的pathName,对它你行以空格进行切割,目的得到这个字符串,然后输入流根据这个路径获得对应的文件,然后回应给浏览器。这个最终结果是浏览器呢边出现了网页,说明在java的代码中可以写带有正斜杠的路径,但是在操作系统中到底认不认正斜杠的路径,继续验证
在windows中的文件的管理的路径的输入框内,直接输入带正斜杠的路径
其结果是直接跳转到对应的目录下了,说明windows是可以读取带正斜杠的路径,不过在这个过程中发现个有趣的现象,就是自己在想发送的请求的url,文件路径的分割符,我能不能直接换成反斜杠,看看结果是怎样的,探究的过程如下
点下enter键,浏览器段发生变化是,按下的瞬间,url中的反斜杠变成了正斜杠,呢服务器端的后台打印的是
,也就是说url中的路径虽然含有反斜杠,但是在发送请求的瞬间,浏览器的解析就把反斜杠变为正斜杠了。以上是自己的拙见,有错误的地方忘大佬指出。