龙空技术网

JAVA笔记(二十九):三种路径问题 与 配置文件(Properties)

计科小白 971

前言:

而今大家对“java项目根路径”都比较讲究,你们都想要学习一些“java项目根路径”的相关知识。那么小编同时在网上搜集了一些关于“java项目根路径””的相关文章,希望小伙伴们能喜欢,小伙伴们快快来了解一下吧!

一、文件路径

1.绝对路径

以根目录或某盘符开头的路径(或者说完整的路径)

例如:

lc:/a.txt (Windows操作系统中)

lc:/xxx/a.txt (Windows操作系统中)

l/var/xx/aa.txt (Linux操作系统中)

绝对路径的问题: 比如C:\abc\a.properties文件路径,该路径在windows上执行没有 问题,但是如果把该项目移动到linux上面执行 ,该路径就会出现问题了,因为在linux上面没有c盘的,只有根目录\。

2.相对路径

相对于当前路径的一个路径。例如当前文件夹为c:/abc时:相对路径a.txt表示c:/abc/a.txt,相对路径xx/a.txt = c:/abc/xx/a.txt

l.表示当前文件夹

l..表示上级文件夹

相对路径存在的问题:相对路径是相对于目前执行class文件的时候,控制台所在的路径,这样子也会导致出现问题。

java程序中的相对路径

3.classpath路径

classpath路径说明:在Java程序中,一般情况下使用绝对路径还是相对路径都不太合适,因为Java程序的jar包所放的位置不确定,执行java程序时当前的路径也不确定,所以不合适。一般在Java程序中我们会把资源放到classpath中,然后使用classpath路径查找资源。

Classpath路径:就是使用classpath目前的路径。

获取classpath中的资源(InputStream)

获取classpath路径

二、配置文件(Properties)

1.Properties配置文件说明

Properties类对应.properties文件。文件内容是键值对,键值对之间使用"="或空格隔开。开头是"#"的表示注释

Properties类在加载.properties文件时使用的iso8859-1的编码。

所以这个文件中的中文要特殊处理:如果这个配置文件中有中文就必须要进行转义,使用native2ascii.exe命令操作: native2ascii d:/my.properties d:/my2.properties

使用Properties类中的load(InputStream) 方法可以加载配置文件,使用其中的store(OutputStream) 方法可以保存配置到指定文件。(更多的信息可以看Properties类的API文档)

2.加载配置文件(注意路径问题)

加载配置文件

3.写配置文件(注意中文问题)

写配置文件

4.使用Properties类

使用Properties类

标签: #java项目根路径