文档章节

java 文件读取路径

代码学习者01
 代码学习者01
发布于 2013/12/31 21:30
字数 189
阅读 15
收藏 0

1, TestURL().class.getResource("").getPath()或TestURL().class.getResource("").getFile()获得的路径,不能被FileReader()和FileWriter()直接应用。 
原因是URL对空格,特殊字符(%,#,[]等)和中文进行了编码处理。 
例如:空格变为%20。 
有解决方法(1),使用repaceAll("%20",' ')替换后,只能解决空格问题。但是路径中包含%和中文就不行了。 
有解决方法(2),使用URLDecoder.decode(str,"UTF-8")解码,但是只能解决一部分,若路径中含有+,也是不能解决的,原因是URL并不是完全用URLEncoder.encode(str,"UTF-8")编码的,+号被解码后,却变成了空格。 
方法(3),可以解决所有的问题,用TestURL().class.getResource("").toURI().getPath(),但是需要处理URISyntaxException异常,比较麻烦点。

© 著作权归作者所有

共有 人打赏支持
上一篇: kinect c++
下一篇: 抠图
代码学习者01
粉丝 17
博文 104
码字总数 235062
作品 0
天津
私信 提问
maven打jar包,配置文件没有被打入

今天在给common项目打包的过程中,发现打出的包中(jar文件)不包含.properties文件,我们项目在读取一些配置时,把信息写在了weifutong.properties 文件中,地址为:XXX_common/src/main/j...

小学生学习
04/26
0
0
Fedora 15 设置环境变量

Linux操作系统,是一种计算机操作系统。Linux操作系统的内核的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。 1、引言 在 linux系统 下,如果你下载并安装了...

路一直在走
2011/10/25
0
0
Ant 中 *Log4j.properties 找不到文件的问题

在用 Ant 进行构建,部署,运行过程中,发现一小问题,就是在运行时总是提示“系统找不到指定的文件”。害得我花了不少时间,最后终于弄清楚了问题的原因。以下的错误代码(贴出来好让后面的...

xiaofer2008
2011/01/14
0
0
【J2EE系列】JNDI与tomcat连接池

JNDI与tomcat连接池 本章内容 ² JNDI与JNDI服务器 ² 编码实现JNDI目录服务与命名服务 ² 使用Tomcate JNDI服务器 一、JNDI概述 1、什么是JNDI? 英文全称是:Java Naming and Directory Inte...

磊神Ray
2012/02/15
0
1
Windows上的Java Usage Tracker本地提权漏洞详情披露(CVE-2018-3211)

     我们发现,Java Usage Tracker中的设计缺陷/弱点可以让黑客创建任意文件,注入攻击者指定的参数并提升本地特权。反过来,这些可以链接起来并用于升级权限,以便访问受影响系统中的资...

嘶吼RoarTalk
10/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Redis分布式锁的实现原理看这篇就够了~

一、写在前面 现在面试,一般都会聊聊分布式系统这块的东西。通常面试官都会从服务框架(Spring Cloud、Dubbo)聊起,一路聊到分布式事务、分布式锁、ZooKeeper等知识。 所以咱们这篇文章就来...

Java干货分享
22分钟前
2
0
Actor并发编程模型浅析

一.Actor模型介绍 在单核 CPU 发展已经达到一个瓶颈的今天,要增加硬件的速度更多的是增加 CPU 核的数目。而针对这种情况,要使我们的程序运行效率提高,那么也应该从并发方面入手。传统的多...

终日而思一
22分钟前
1
0
利用arthas实时定位线上性能问题

0. 场景及需求 我们线上5台solr读服务器,配置一样,但是相同的请求,其中一台响应时间明显比其他4台慢,我们想通过arthas来定位具体哪里执行慢。 1. arthas介绍 阿里开源的java调试工具,能...

andersChow
24分钟前
2
0
docker 启动策略

Docker run的时候使用--restart参数 no - Container不重启 on-failure - container推出状态非0时重启 always - 始终重启 例如: docker run --restart=always -itd -p 2222:22 -p 3306:3306......

colin_86
24分钟前
1
0
Thinkphp5开发OA办公系统之招聘申请

开发运行环境: 神舟笔记本K650D-G6D1 i5-6400 GTX950M Windows 10 专业版 Nginx 或 Apache Web 服务器软件 MySQL5.7.x 数据库 PHP7.1.0 PHPStrom 2017 PowerDesigner 16.5 Axure RP8 原型设......

乐兔CRM
26分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部