A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© xkfxm 中级黑马   /  2013-8-5 17:34  /  1506 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 xkfxm 于 2013-8-5 23:06 编辑

在学习IO的时候,创建一个流对象然后关联一个文件:
  1. FileReader fr = new FileReader("E:\\JAVA\\入学考试\\day19_IO流\\demo.txt");
复制代码
后面学习加强时:
  1. InputStream ips = ReflectTest2.class.getResourceAsStream("resources/config.properties");
复制代码
这两个地方表示路径时用的路径分隔符为什么不同?但是后来我试了下,“/”和“\”都能可以,
但是java中\有特殊用途就是转意,所以用“\”时要写成“\\”来表示字符\;
/和\的区别到底在哪里呢?查了点资料,说Windows或者说DOS在设计初期考虑不够周全,为了和Unix一些特征区别开来,将Unix中的正斜杠"/"分隔路径方 式改变成了反斜杠"\"
但是为什么我现在的windows系统可以用“/”来表示路径分隔符?
还有输入网页地址时为什么只能用“/”?我将网页地址中的“/”改成了“\”点连接时为什么自动变成“/”了?

评分

参与人数 1技术分 +1 收起 理由
杨兴庭 + 1

查看全部评分

3 个回复

倒序浏览
Java支持将斜线"/"当成平台无关的路径分隔符。

查阅Java API文档的File部分,其中有说明File.separatorChar属性,该属性用来描述与系统相关的默认名称分隔符。
此字段被初始化为包含系统属性 file.separator 值的第一个字符。在 UNIX 系统上,此字段的值为 '/';在 Microsoft Windows 系统上,它为 '\\'。

所以,通过查阅文档,我们通常会使用'\\'这种方式,但"/"这种方式Java也支持;
同理,在浏览器中一般使用"/"来分隔地址,但浏览器也支持"\"(会自动转成"/")

评分

参与人数 1技术分 +1 收起 理由
杨兴庭 + 1

查看全部评分

回复 使用道具 举报
“//”其中第一个/是转义字符,因为/是一个特殊 的字符,必须要转义!
回复 使用道具 举报
佟都 发表于 2013-8-5 18:06
Java支持将斜线"/"当成平台无关的路径分隔符。

查阅Java API文档的File部分,其中有说明File.separatorCha ...

学习了,谢谢:)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马