`
阅读更多
/**
	 * 获取文件名称
	 * @param url 需要获取的url
	 * @return
	 */
	public static String getFileName(String url) {
        String filename = "";
        boolean isok = false;
        // 从UrlConnection中获取文件名称
        try {
            URL myURL = new URL(url);

            URLConnection conn = myURL.openConnection();
            if (conn == null) {
                return null;
            }
            Map<String, List<String>> hf = conn.getHeaderFields();
            if (hf == null) {
                return null;
            }
            Set<String> key = hf.keySet();
            if (key == null) {
                return null;
            }
            for (String skey : key) {
                List<String> values = hf.get(skey);
                for (String value : values) {
                    String result;
                    try {
                        result = new String(value.getBytes("ISO-8859-1"), "GBK");
                        int location = result.indexOf("filename");
                        if (location >= 0) {
                            result = result.substring(location
                                    + "filename".length());
                            filename = result
                                    .substring(result.indexOf("=") + 1);
                            isok = true;
                        }
                    } catch (UnsupportedEncodingException e) {
                        e.printStackTrace();
                    }// ISO-8859-1 UTF-8 gb2312
                }
                if (isok) {
                    break;
                }
            }
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        // 从路径中获取
        if (filename == null || "".equals(filename)) {
            filename = url.substring(url.lastIndexOf("/") + 1);
        }
        return filename;
    }

分享到:
评论

相关推荐

    libcurl 实现获取ftp远程 文件大小

    libcurl 实现获取ftp远程 文件大小自己实现得 可以使用 直接可以拿走用

    JAVA 根据Url 接口 获取文件名称和类型

    JAVA 根据Url 接口 获取文件名称和类型,亲测可用。输入参数地址即可。

    获取远程文件大小的php函数

    在PHP编程语言中,获取远程文件的大小是一个常见的需求,特别是在处理网络资源时。...在实际开发中,根据项目需求和服务器配置,开发者可以选择最适合的方法来获取远程文件大小,确保程序的稳定性和效率。

    PHP 获取远程文件大小的3种解决方法

    本文将介绍三种常用的方法来获取远程文件的大小,这三种方法分别是使用file_get_contents()函数、get_headers()函数和fsockopen()函数。在使用这些方法之前,必须确保服务器配置中打开了allow_url_fopen选项。如果...

    C#WinForm做FTP上传下载获取文件列表齐全

    根据给定的文件信息,我们可以总结出以下关于使用C# WinForm进行FTP上传、下载以及获取文件列表的关键知识点: ### C# WinForm与FTP交互基础知识 在C#中,使用WinForm开发图形用户界面(GUI)应用时,可以通过.NET...

    获取远程机器网卡的MAC地址

    本文将详细讲解如何使用Delphi编程语言,通过创建具有图形用户界面(GUI)的工程来实现获取远程机器网卡的MAC地址这一功能。 首先,了解MAC地址。MAC地址,全称为Media Access Control Address,是网络硬件设备的...

    C# 获取本地计算机所有共享文件和路径源码

    首先,我们需要了解在Windows操作系统中,共享文件和路径是通过网络共享功能实现的,允许用户或程序访问远程或本地计算机上的特定资源。在C#中,我们可以利用System.Management命名空间中的ManagementObjectSearcher...

    rmi远程调用读取文件

    - 获取远程服务引用:使用` LocateRegistry.getRegistry()` 连接到服务器的RMI注册表,然后通过`Naming.lookup()`查找并获取`FileService`的引用。 - 调用远程方法:使用获取到的引用调用`readFile`方法,传入文件...

    探测远程Windows主机NetBios信息程序vc++.rar_NetBIOS_windows远程_获取 远程 主机 信息_远

    这通常涉及到通过SMB(Server Message Block)协议来实现,SMB是NetBIOS在TCP/IP网络上的扩展,允许应用程序访问远程文件系统、打印机和其他网络资源。 描述中的“探测远程Windows主机NetBios信息程序vc”进一步...

    RMI实现远程文件传输实例

    4. **获取远程对象引用**:客户端通过RMI注册表获取远程对象的引用,这允许客户端调用远程对象的`transferFile`方法。 5. **执行文件传输**:客户端调用`transferFile`方法,传入待传输的文件名,服务器端接收到请求...

    windows下批量下载远程文件.zip

    在压缩包的文件名称列表中: 1. **说明.txt** - 这通常是提供详细步骤、使用指南或注意事项的文本文件,用户应首先查阅此文件了解如何使用提供的工具或代码。 2. **下载.zip** - 这可能是实际用于批量下载的程序或...

    基于PHP的小哦远程文件下载程序源码 php版.zip

    开发者可能利用了PHP的fopen(), fread(), fpassthru()等函数来读取和发送文件内容,或者使用file_get_contents()函数直接获取远程文件内容。 在【压缩包子文件的文件名称列表】中,我们看到"132685341559229635",...

    获取文件目录.rar

    在IT领域,获取文件目录是一项基础且重要的任务,特别是在编程和系统管理中。这涉及到操作系统提供的API调用、脚本...无论是在本地文件系统还是远程服务器,通过正确的方法,我们都能轻松地获取和管理所需的文件目录。

    VC++远程监控,进程管理,文件管理等

    对于远程文件管理,可能需要将文件传输功能集成到远程监控系统中,例如通过FTP、SMB(Server Message Block)协议进行文件传输。 **SERVER端开发** SERVER端是远程监控系统的控制中心,负责接收客户端的请求,执行...

    springboot以FTP方式上传文件到远程服务器的流程

    Spring Boot 中使用 FTP 上传文件到远程服务器的流程 在本文中,我们将介绍如何使用 Spring Boot 实现 FTP 上传文件到远程服务器的流程。这个流程包括如何使用 JWT 登录认证及鉴权的流程,以及如何使用 Spring ...

    java操作文件,得到文件名,大小,时间,及修改时间

    java操作文件,得到文件名,大小,时间,及修改时间java操作文件,得到文件名,大小,时间,及修改时间java操作文件,得到文件名,大小,时间,及修改时间

    C#获取远程HTTP xml数据

    ### C# 获取远程HTTP XML数据方法详解 在现代软件开发中,从远程服务器获取XML数据是一种常见的需求。本文将详细介绍三种不同的方法来实现这一功能,包括利用`XmlReader`、`XDocument`以及`WebClient`类进行操作。 ...

    远程电脑文件枚举.rar

    实现远程文件枚举,我们通常会使用一些远程访问协议,例如Windows系统中的 SMB (Server Message Block) 或者更现代的SMBv3,还有FTP (文件传输协议)、SSH (安全外壳协议) 或者SCP (安全复制命令)。这些协议允许我们...

    php远程下载文件并保存

    - 当`$type`为0时,采用`readfile`结合`ob_start`来获取远程文件内容。 - 当`$type`非0时,使用`cURL`进行下载。 - 使用`strlen`计算下载内容的大小。 3. **文件保存**: - 打开目标文件(使用`$save_dir`和`$...

    ZIP文件解压上传服务器

    - 对每个条目,创建`ZipEntry`对象,获取其名称、大小等信息。 - 如果条目是文件,可以使用`java.io.FileOutputStream`创建目标文件,并通过`ZipInputStream`的`read()`方法读取数据,写入目标文件完成解压。 2. ...

Global site tag (gtag.js) - Google Analytics