十五(四)、url
一、概述:
url:统一资源定位符;一个URL的一个对象对应互联网上的一个资源,
<传输协议>://<主机名>:<端口号>/<文件名>#片段名?参数列表
二、常用方法:
读取的方法:
- getProtocol 获取URL的协议
- getHost 获取URL主机名
- getPort 获取URL端口号
- getPath 获取URL文件路径
- getFile 获取URL文件名
- getRef 获取URL在文件中的相对位置
- getQuery 获取URL查询名
1 @Test 2 public void test() throws MalformedURLException { 3 URL url = new URL("https://www.cnblogs.com/lixiuming521125/tag/Java/default.html?page=1"); 4 System.out.println("获取URL的协议==>"+url.getProtocol()); 5 System.out.println("获取URL主机名==>"+url.getHost()); 6 System.out.println("获取URL端口号==>"+url.getPort()); 7 System.out.println("获取URL文件路径==>"+url.getPath()); 8 System.out.println("获取URL文件名==>"+url.getFile()); 9 System.out.println("获取URL在文件中的相对位置==>"+url.getRef()); 10 System.out.println("获取URL查询名==>"+url.getQuery()); 11 12 }
结果:
获取URL的协议==>https
获取URL主机名==>www.cnblogs.com
获取URL端口号==>-1
获取URL文件路径==>/lixiuming521125/tag/Java/default.html
获取URL文件名==>/lixiuming521125/tag/Java/default.html?page=1
获取URL在文件中的相对位置==>null
获取URL查询名==>page=1
其他(既有输入又有输出)
通过URL的对象调用相应方法,将此资源读取(“下载”)
1 //如何精服务器端的资源读取出来openStream,该方法只负责度如数据 2 InputStream is = url.openStream(); 3 byte[] b = new byte[20]; 4 int len; 5 //输出到控制台 6 while((len = is.read(b)) != -1){ 7 String str = new String(b,0,len); 8 System.out.println(str); 9 } 10 11 //如果有数据输入,又有输出,则考虑用URLConnection 12 //保存到本地文件 13 URLConnection urlConn = url.openConnection(); 14 InputStream is1 = urlConn.getInputStream(); 15 FileOutputStream fos = new FileOutputStream(new File("abc.txt")); 16 byte[] b1 = new byte[20]; 17 int len1; 18 while((len1 = is1.read(b1)) != -1){ 19 fos.write(b1, 0, len1); 20 } 21 fos.close(); 22 is1.close();
博客园地址:https://www.cnblogs.com/lixiuming521125/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!