2013-02-22 10:19 Tomcat下获取当前类的路径中含有空格的解决方案
来源:互联网 发布:手机淘宝怎样查看物流 编辑:程序博客网 时间:2024/05/22 08:03
web项目发布到Tomcat之后,如果tomcat是安装在比如
C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\****
那么你获取当前类的路径的时候,就会出现问题,因为它会报出%20
C:\Program%20Files\Apache%20Software%20Foundation\Tomcat 6.0\webapps\****
这个时候你再做一些关于文件的操作,程序就挂了,报一些未知错误,那么解决方案就是使用字符串的replace方法,进行字符串替换即可.
//获取当前类加载器,并找到指定目录POOLCONFIG_FOLDER是之前设置好的static 变量
String path = Thread.currentThread().getContextClassLoader().getResource(POOLCONFIG_FOLDER).getPath();
//进行字符串替换
path = path.replace("%20", " ");
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
public
class
DBUtil
{
private
static
String
POOLCONFIG_FOLDER =
"pools"
;
private
static
void
init()
{
/**
* 方法一,利用当前类加载器1
*/
// URL url = Thread.currentThread().getContextClassLoader().getResource(POOLCONFIG_FOLDER);
// String path = url.getFile();
// path = path.replace("%20", " ");
// File folder = new File(path);
/**
* 方法二,利用当前类加载器2
*/
//String path = DBUtil.class.getClassLoader().getResource(POOLCONFIG_FOLDER).getPath();
//path = path.replace("%20", " ");
// File folder = new File(path);
/**
* 方法三,利用当前线程类加载器
*/
String
path = Thread.currentThread().getContextClassLoader().getResource(POOLCONFIG_FOLDER).getPath();
path = path.replace(
"%20"
,
" "
);
File folder =
new
File(path);
logger.debug(
"path :"
+ path);
if
(folder.isDirectory())
{
File[]fileList = folder.listFiles();
for
(
int
i =
0
, len = fileList.length; i < len; i++)
{
try
{
File file = fileList[i];
String
name = file.getName();
name = name.substring(
0
, name.lastIndexOf(
"."
));
InputStream input =
new
FileInputStream(file);
Properties props =
new
Properties();
props.load(input);
loadPoolConfig(name, props);
}
catch
(Exception e)
{
e.printStackTrace();
logger.info(
"加载DBUtil出现问题。。。。。"
);
logger.error(e.getMessage());
}
}
}
}
}
- 2013-02-22 10:19 Tomcat下获取当前类的路径中含有空格的解决方案
- Tomcat下获取当前类的路径中含有空格的解决方案
- java获取路径中含有空格%20的处理
- 路径中含有空格的问题
- java中获取当前项目类路径下的配置文件
- VC中关于路径中含有空格问题的解决办法
- C++中如何处理含有空格的文件路径
- http请求本地文件,路径中含有空格的处理 QT
- java类中获取tomcat下的webap路径方法
- cmd路径里含有空格的处理
- 获取当前类的路径
- Python获取当前路径下的配置文件
- JAVA中获取当前应用程序的路径
- java中获取当前路径的方法
- .Net中获取当前路径的方法
- QTP中获取当前路径的方法
- 批处理文件中的当前路径获取
- php中获取当前文件的路径
- Extjs4 实现下拉树
- Android之SurfaceView学习(一)
- linux 下创建一个用户 与 另一个用户权限一致
- 链表操作--指针传递 测试与学习
- 设置应用程序图标
- 2013-02-22 10:19 Tomcat下获取当前类的路径中含有空格的解决方案
- C#中数据库基本操作的练习
- Web服务器推送方式择优问题
- 韩顺平网页设计第三十八讲
- MYeclipse新建项目发布到SVN
- MyEclipse10.0 采用插件方式安装 SVN
- C++函数模板
- java中日期类型详解
- LinkIssue: Error 'LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or cor