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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

今天用File.Delete删除文件,结果传的参数是个Uri格式的,像这样(File:///d:\1.txt),各位大神帮忙看下怎么转成普通的(d:\1.txt)哇~~~谢谢~

4 个回复

倒序浏览
方法1、用URLDecode解码就可以了。
方法2:URI有自己的getPath方法,直接返回的就是解码后的路径
回复 使用道具 举报
用分隔符string.Split()就可以,string.Substring()都可以。
当让像楼上兄弟说的也行。{:soso_e100:}
回复 使用道具 举报
用URLDecode解码就可以了。
String code = "D:/%e5%ad%a6%e6%b5%b7/My%20Course/%e8%ae%a1%e7%ae%97%e4%b8%8e%e8%bd%af%e4%bb%b6%e5%b7%a5%e7%a8%8b/Java%20workspace/my Project/bin/";
try{       
String src=URLDecoder.decode(code,"UTF-8");//注意编码和输入时一致
System.out.print(src);}
catch (UnsupportedEncodingException e)
{
e.printStackTrace();
}======显示:D:/学海/My Course/计算与软件工程/Java workspace/my Project/bin/
方法2:URI有自己的getPath方法,直接返回的就是解码后的路径
比如System.out.print(url.getPath());
回复 使用道具 举报
使用urldecode()方法解码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马