老师,File.separator 好像不是什么地方都可以用。比如在 JDBC 获取数据库连接对象,也就是如下代码这里:
//database 是数据库名称, user 和 password 分别是用户名和密码
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/database", "user", "password");
不可以改成:
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306" + File.separator + "database", "user", "password");
后来我打印了一下 File.separator,手上这台电脑是 Win10 的,发现出来的结果是“\“,而不是代码里的”/“,而我本来以为 File.separator 会自动转化成”/“。
我想问一下,这个 File.separator 的使用场景是什么?在 JDBC 获取数据库连接对象的这段代码里,是不是不需要考虑不同系统下分隔符有所不同的问题?
展开
作者回复: File.separator 就是文件系统的路径分割符。它和数据库里的分隔符是不一样的。数据库连接串的分隔符和操作系统是无关的。但是文件系统的路径分隔符在不同的操作系统可能是不一样的。