接口返回给我一个网址链接,而我需要取网址中,后面部分的文件名。从给定的网址中提取文件名后面的部分,可以使用 Java 中的 URL 类来解析网址,并获取路径部分

前言:
开发中,我们会遇到:接口返回给我一个网址链接,而我需要取网址中,后面部分的文件名,举例,完整网址为:“https://xxxxxxxxxxxxxx.com/Download/casetest/1684122146934292.png”,而我需要的是:/Download/case/test/1684122146934292.png,考虑到上面网址中,文件名前面部分的网址可能会出现更改,那我们应该如何截取才能更灵活应对网址可能会变换的问题?

要从给定的网址中提取文件名后面的部分,可以使用 Java 中的 URL 类来解析网址,并获取路径部分。然后,你可以根据路径部分进行进一步的处理。

以下是一个示例代码:

import java.net.URL;

// 假设网址为 urlStr
String urlStr = "https://xxxxxxxxxxxxxx.com/Download/casetest/1684122146934292.png";

try {
    // 创建 URL 对象
    URL url = new URL(urlStr);

    // 获取路径部分
    String path = url.getPath();

    // 输出路径部分
    System.out.println("路径部分: " + path);

    // 提取文件名部分
    String filename = path.substring(path.lastIndexOf('/') + 1);

    // 输出文件名部分
    System.out.println("文件名: " + filename);
} catch (Exception e) {
    e.printStackTrace();
}

在上述示例中,我们使用了 Java 的 URL 类来解析网址。首先,创建一个 URL 对象,并通过 getPath() 方法获取路径部分。然后,使用 lastIndexOf('/') 方法找到最后一个斜杠的位置,再使用 substring() 方法从该位置开始提取文件名部分。

这种方法可以灵活处理不同网址的变化,因为它只依赖于路径部分,而不依赖于网址的前缀或其它部分。你可以根据实际需要,对提取的文件名进行进一步处理或使用。


log2.png

根据上面代码,我们得到的获取路径部分path就是我所需要的,连接后面的/Download/casetest/1684122146934292.png部分。仅此,完毕。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容