java.net.URL的toString和getPath的一个小问题

今天在用dom4j读写xml文件的时候, 想写一个方法工具类, 通过参数class和文件名来读取类路径下的xml文件。

刚开始的时候想当然的写成了

public class PathUtil
{
public String getPathByName(String name,Class<?> clz){

URL url=clz.getClass().getClassLoader().getResource(name);
String result=[b]url.toString();[/b]
return result;
}
}



结果出错。 莫名其妙弄了半天。
最后发现toString返回的字符串和getPath返回的是不一样的

/D:/javatest/Japanese/target/classes/n1.xml
file:/D:/javatest/Japanese/target/classes/n1.xml
上面的是getPath返回的字符串, 而下面的是toString返回的。

toString返回的字符串不能用于获取文件。 所以报错无法找到文件。

报错信息:
org.dom4j.DocumentException: file:\D:\javatest\Japanese\target\classes\n1.xml (文件名、目录名或卷标语法不正确。) Nested exception: file:\D:\javatest\Japanese\target\classes\n1.xml (文件名、目录名或卷标语法不正确。)
at org.dom4j.io.SAXReader.read(SAXReader.java:266)
at com.lj.test.Test01.main(Test01.java:38)
别再踩坑了!Java代码调用接口返回301,原来是HTTPS强制跳转在作祟 本文深入解析Java代码调用接口返回301状态码的原因,揭示HTTPS强制跳转与HSTS策略的技术原理,并提供从快速修复到生产级解决方案的实战指南。针对Http到HTTPS的301 Moved Permanently问题,详细介绍了URL规范化处理、HttpClient自动重定向配置等最佳实践,帮助开发者构建健壮的HTTP客户端。 阅读详情

相关推荐

ZYNQ Linux环境下PS端I2C驱动OV5640摄像头全流程解析

本文详细解析了在ZYNQ Linux环境下,通过PS端I2C驱动OV5640摄像头的完整流程。内容涵盖从Vivado硬件配置、PetaLinux系统构建、设备树节点添加,到用户空间I2C编程与寄存器配置实战,并提供了关键的调试技巧与常见问题排查方法,帮助开发者快速实现嵌入式视觉应用的传感器配置。

vulkan6gpu的博客 830

Java File 类的 getPath()、getAbsolutePath()、getCanonicalPath() 的区别

楔子 考虑一下几种路径: C:\temp\file.txt- 绝对路径,也是规范路径 .\file.txt- 相对路径 C:\temp\myapp\bin\..\..\file.txt这是一个绝对路径,但不是规范路径 关于什么是规范路径? 粗略的认为规范路径就是不包含相对路径如..\或者.\的绝对路径 实例说明 package com.sino.daily.code_2020_3_11; import java.io.File; /** * create by 2020-05-31 08:46 *

借你一秒 1011

sec_uid

webcast_uid转sec_uid,webcast_uid转uid,webcast_uid转dy号

m0_56967679的博客 4354

java.net.url对象

https://blog.csdn.net/it_cookie_sam/article/details/55657708转java.net.url对象2017年02月18日 12:09:09阅读数:2326感谢博主的用心编写原文链接:http://blog.csdn.net/witsmakemen/article/details/6989010一、用JAVA实现URL  在JAVA中,Java.n...

lppl010_的专栏 642

javaurl类使用

JAVAURL 一、用JAVA实现URL   在JAVA中,Java.net包里面的类是进行网络编程的,其中java.net.URLjava.net.URLConection类使编程者方便地利用URL在Internet上进行网络通信。 1、创建URL对象   URL类有多种形式的构造函数: (1) URL ( String url)   //url代表一个

WitsMakeMen的专栏 4万+

JAVA网络编程个人笔记 第五章 URLURI

JAVA网络编程个人笔记 第五章 URLURIURLURIURL/URI简介URIURL的定义URL的语法schemeuser:passwordhostportpathParamsqueryFragment代码实例UserInfo属性代码实例URLURL类简介创建对象从字符串构建URL对象代码实例由组成部分构建URL对象根据相对URL构建URL对象代码实现从URL对象获取信息openStream()方法代码实现openConnection方法getContent()方法分解URLURL类的Objec

mcyuuji的博客 2515

java 处理 url_Java URL处理 - Java 教程 - 自强学堂

Java URL处理URL(Uniform Resource Locator)中文名为统一资源定位符,有时也被俗称为网页地址。表示为互联网上的资源,如网页或者FTP地址。本章节我们将介绍Java是如处理URL的。URL可以分为如下几个部分。protocol://host:port/path?query#refprotocols(协议)可以是 HTTP, HTTPS, FTP, File。port...

weixin_29309475的博客 258

java 自定义 URLStreamHandlerFactory

最近使用layui作为javafx的表现层,发现layui的字体文件在打包后无法正常加载,在经过仔细排查后,发现是打包后路径发生变化导致的,所以就自定义了URLStreamHandlerFactory来处理无法加载的文件。 static { URL.setURLStreamHandlerFactory(new CustomURLStreamHandlerFactory()); } p...

惜缘破军 1320

java.net.URISyntaxException: Illegal character in query

java使用httpclient爬取一个网站的时候,请求:String url3="http://sh.58.com/ershoufang/33562546149042x.shtml?amp;params=esfjxpclranxuanctrAB^desc&amp;fzbref=0&amp;entinfo=33562546149042_0&amp;cookie=|...

1186

Java Socket 编程实战:3个核心类(InetAddress/URL/Socket)构建简易网络聊天室

本文详细介绍了Java Socket编程实战,通过InetAddress、URLSocket三大核心类构建简易网络聊天室。内容涵盖网络编程基础、核心类解析、聊天室设计与实现,以及高级功能扩展性能优化,帮助开发者快速掌握Java网络通信技术。

weixin_30887919的博客 866

Java Socket 编程实战:3个核心类(InetAddress/URL/Socket)构建简易HTTP服务器

本文详细介绍了如何使用Java Socket编程中的三个核心类(InetAddress、URLSocket)构建简易HTTP服务器。通过实战示例,展示了如何解析HTTP请求、响应静态文件并支持多线程处理,适用于教学演示小型项目实践。文章深入浅出地讲解了网络编程基础,帮助开发者掌握构建高效HTTP服务器的关键技术。

cnmik42448的专栏 366

采用itextpdf 实现java的PDF生成与导出功能,含封装工具类代码

本文介绍了一种使用itextpdf库结合Spring Boot实现PDF导出的方法。通过制作PDF模板并利用字段填充的方式完成数据的自动填充,同时解决了中文显示及图片字段处理的问题

qq_25720801的博客 7315

java中io流(文件流)的使用、资源加载笔记(一)

java中io流(文件流)的使用、资源加载笔记(一)

enthan809882的博客 1362

Cannot invoke “java.net.URL.toString()“ because “url“ is null

遇到 jre不兼容 换了1.8jdk。

sinat_38424109的博客 2086

URL类方法源码解读

protected String toExternalForm(URL u) { // pre-compute length of StringBuffer int len = u.getProtocol().length() + 1; if (u.getAuthority() != null && u.getAuthority().length(

lzm18064126848的专栏 811

java urlgetpath_Java URL getPath()用法及代码示例

getPath()函数是URL类的一部分。函数getPath()返回指定URL的路径名称。函数签名:public String getPath()用法:url.getPath()参数:此功能不需要任何参数返回类型:函数返回字符串类型以下示例程序旨在说明getPath()函数的用法:例子1:给定一个URL,我们将使用getPath()函数获取路径。// Java program to show th...

weixin_36298476的博客 1904

JAVAURL

一、用JAVA实现URL   在JAVA中,Java.net包里面的类是进行网络编程的,其中java.net.URLjava.net.URLConection类使编程者方便地利用URL在Internet上进行网络通信。 1、创建URL对象   URL类有多种形式的构造函数: (1) URL ( String url)   //url代表一个绝对地址,URL对象直接指向这个资源,如:   URL urll=new URL(http://www.cqwu.edu.cn); (2) URL ( URL

sunny潘先生的博客 4066

java.net.URL各get方法的含义

呵呵,隐士研究java.net.URL中,源码注释如下: * @author  James Gosling * @version 1.130, 08/25/04 * @since JDK1.0 哈哈,白胡老头写的,好些个get方法,含义不是很直白,隐士写个小程序把各种值dump出来瞧瞧。输入结果如下:getAuthority() = so.mdbchina.comgetClass(

网络隐士的专栏 3829

java获取url中的指定参数

如何实现Java获取URL中的指定参数 作为一名经验丰富的开发者,我将指导你如何在Java中获取URL中的指定参数。这是一项常见的任务,尤其在Web开发中经常会遇到。我们将通过以下步骤来完成这个任务: 整体流程 下表展示了我们将要执行的步骤: 步骤 描述 1 获取URL 2 解析URL获取参数键值对 ...

weixin_35133182的博客 766

java URL java.net.URL的介绍

URL代表一个统一资源定位符,它是指向互联网“资源”的指针。资源可以是简单的文件或目录,也可以是对更为复杂的对象的引用,也就是我们常说的域名、浏览器访问地址。 在Java中就是使用URL访问网络资源,获取url对象的相关信息。 1.构造方法 URL(Stringspec) 根据String表示形式创建URL对象。 URL(Stringprotocol,Stringhost, intport,Stringfile) ...

人生最遗憾的莫过于:轻易地放弃了不该放弃的,固执地坚持了不该坚持的 3647

Chroma8000系统架构以及运用.ppt

Chroma8000系统架构以及运用.ppt

上一篇: Java synchronized一个实例
下一篇: 反射操作对象的一个实例 (hibernate原理基础)
alleni123
博客等级 码龄15年 11粉丝 230原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值