如何通过一个URL获取文件名和文件类型

我想自己搭建一个离线下载服务器,怎样能通过一个URL获取这个文件的文件名和文件类型
比如http://www.baidu.com/a/b/c/index.php?a=1&b=2这样子的
还比如url中有中文编码%B7%E5%A3%AB.mp4这种的
还比如http://www,baidu.com/?a=b&c=d这样的

假如是iis服务器在响应头中甚至没有Content-Type filename
求一个统一点的解决办法

1

3个回答

对了还有文件大小,有人知道迅雷等下载软件是怎么做到的?

0

获取网页源码中的信息,你会得到很多有用的,有些软件名称就在url中,有的软件,名称并不是在路径中。或者还有版本号。分情况对待。或者要明确你需要下载的资源类型。

0

不能将获取的文件信息先储存到fileinfo嘛然后在看

-1
jin123456bat
M丶Sic finfo_file不支持url,只支持本地文件
大约 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
JAVA 根据Url 接口 获取文件名称和类型
JAVA 根据Url 接口 获取文件名称和类型,亲测可用。输入参数地址即可。
获取URL对应的文件类型及后缀名
/** * Created by xiaoyee on 7/31/15. In project yundong_android */ public enum FileTypeUtil { PNG(".png", "image/png"), JPG(".jpg", "image/jpeg"), MP4(".mp4", "video/mp4"), JPEG(".jpe
从URL中获取文件名称
var url = 'https://csdnimg.cn/release/phoenix/vendor/pagination/paging.css'; var filename = url.substring(url.lastIndexOf('/')+1); lastIndexOf() : 可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索。 str...
Android 下载文件获取对应链接文件的名称及扩展名
Android开发文件下载有时候下载文件的时候需要获取文件的名称及扩展名,但是下载链接不包含文件的扩展名及文件名,需要其他的方案解决,下面就有两个解决的方案。一、通过HttpURLConnection的提供的方法public static String guessContentTypeFromStream(InputStream in);BufferedInputStream bis = nul...
linq.js的用法
linq.js 详细介绍linq.js 是一个 JavaScript 实现的 LINQ。主要特性:实现所有 .NET 4.0 的方法complete lazy evalu...
Java 根据下载链接获取文件名
public String getFileName(String urlStr){ String fileName = null; try { URL url = new URL(urlStr); URLConnection uc = url.openConnection(); fileName = uc.getHeaderField("Conte
Java网址下载文件获取后缀名
Java网址下载文件获取后缀名网址下载时,网址资源URL格式多样,不一定能在链接中直接获取后缀名,本文综合了多种获取后缀名的方法,供参考: 通过网址后缀直接获取 通过网址响应头中的Content-Disposition(匹配fileName) 通过网址响应头的contentType 通过org.apache.tika包中的MimeType匹配contentType 通过文件头字节匹配(根据文件内容匹
java读取resource/通过文件名获取文件类型
java读取resourcejava读取resource目录下文件的方法: 借助Guava库的Resource类Resources.getResource("test.txt")通过文件名获取文件类型mongodbjava
怎样根据下载链接得到文件名(并非直接从链接中截取)
今天开发一个Android app遇到一个问题,需要根据下载链接得到下载的文件名称,有时候这个名称直接在链接中截取即可,但很多时候下载链接中并不包含文件名,比如 http://d.958shop.com/d/down.aspx?fid=2015091000004 ,后来试了很多方法,最后终于找到了正解,话不多说,上代码:(其中url为下载链接,filename即为文件名) Strin
根据文件名获取文件类型遇到的分割问题:‘.’需要转义
file_type.setText(chatBean.getFileName().split("\\.")[1]); 这里的.是特殊字符 需要转义
php从url中获取文件名和后缀等信息
$url = 'http://www.baidu.com/a/b/c/index.php?id=10'; $arr = parse_url($url); var_dump($arr); $arr2 = pathinfo($arr['path']); var_dump($arr2); array(4) {   ["scheme"]=>   string(4) "http"   ["ho...
java根据文件名称判断文件类型
/* author:zss  * 日期:2017年3月31日  * 功能:根据文件名称判断类型  * 接受参数类型:String   * 返回参数类型:String  * 备注:文件类型不完善,有需要的自行添加  */ public class FileType { public String fileType(String fileName) { if (fileName ==
js 根据扩展名获取文本类型
var BaseConfig = { MediumType:{ ".jpg|.gif|.png|.jpeg":"图片", ".doc|.docx|.xls|.xlsx|.ppt|.pptx|.pdf":"文档", ".wmv|.asf|.flv|.mp4|.rmvb":"视频" } } BaseConfig.mediu
C#根据文件路径获取该文件夹路径、文件名、后缀名
string filename = System.IO.Path.GetFileName(address);//文件名  “Default.aspx”                 string extension = System.IO.Path.GetExtension(address);//扩展名 “.aspx”                 string fileNameWitho
PHP获取URL中文件扩展名
$url = "http://www.sina.com/blog/user/index.html?use=123&pass=qwer"; $url1 = "http://www.sina.com/blog/user/a.jpg"; //第一种方法 function get_ext1($url){     $parse = parse_url($url);     return pathi
Java通过URL下载网络文件,获取文件流并修改文件名
下载网络文件,地址是 http://sk.sit.fosuntech.cn/group1/M00/00/72/CqYKHVn69wyAMl6YAAVf953sp4Y075.pdf 前端调用下载链接 function downloadAttachement(imageId,fileName){ var url = _HTTP_IP_PORT +'repayment/downloa
根据输入流读取文件类型
public static String guessContentTypeFromStream(String urlStr) {         URL url;         try {             url = new URL(urlStr);             HttpURLConnection conn = (HttpURLConnection) url.open
通过正则表达式获取标准url地址的域名和文件后缀名
形如“http://www.abcdef.com/index.php”或“http://www.abcdef.com/index.php?g=Index&m=Index&a=index”的地址即为标准的url地址,现在我们要通过正则式来获取它的域名“abcdef.com”和地址中的文件后缀名“.php”。 1、获取url地址域名: <?php $url = "http://www.ab
iOS 获取文件的MIMEType类型
最近在做上传,需要将文件资源类型传给服务器,这样就可以判断文件是图片还是音视频等。 有两种方法可以实现NSURLSession和NSURLConnection,都是苹果原声网络请求类,但现在苹果不推荐使用NSURLConnection。如下:   NSURLSession获取MIMEType   NSURLConnection获取MIMEType
node——获取URL路径文件扩展名
使用path模块的extname方法可以返回文件的扩展名 var path = require('path'); console.log(path.extname('123.txt')); //.txt  
Android下载文件,如何获取实际的文件名
1. 前言之前APP实现下载文件的功能,都是让后台把下载地址和文件名(包含文件后缀名)传过来。不过近日后台只传了下载地址,我懒得麻烦人家也把文件名传来,所以就自己查资料,想方法解决。2. 解决方案解决的办法如下面的代码所示,目前还算能满足要求,如果大伙们有更好的方法,可以在评论说一声。 HttpURLConnection connection = null; int...
java 根据文件名获取文件扩展名
/** * 获取文件扩展名 * @return */ public static String ext(String filename) { int index = filename.lastIndexOf(&quot;.&quot;); if (index == -1) { return null; }...
Android如何根据资源路径Url获取Scheme类型
1,使用方法: switch (Scheme.ofUri(imageUri)) { case HTTP: case HTTPS: case FILE: case CONTENT: case ASSETS: case DRAWABLE: case UNKNOWN: default: } 2,工具源码: enum Sche
获取文件名 通过URL地址
+ (NSString *)getFileName:(NSString *)urlString{ //1、lastPathComponent NSString *fileName = [urlString lastPathComponent]; //2、NSRange尾部截取法 NSRange range = [urlStr...
java获取文件类型
楔子 java获取文件类型 例子 @Test public void txtType() throws Exception { //需要注意的是 有些文件(例如 shell文件 获取的结果为null) String type = Files.probeContentType(Paths.get(&quot;c:/1.sh&quot;)); System.out.println...
JAVA根据文件名、URL下载远程文件
/** * 文件转换为流返回 * * @param response * @param filePath * @param fileName * @throws IOException */ private static void imageDownload(final HttpServletResponse response, String filePath, S
qt url下载链接 获取文件名
今天同事遇到一个url 下载链接的问题,目前我知道的连接有 http://192.168.2.1:/app/test.pdf 和http://192.168.2.1:/Servlet?action=7&file=erc_y.raq&columns=0&srcType=file&reportParamsId=1012&cachedId=A_3&t_i_m_e=1448698461359 这两种,
iOS 从url中获取文件名
NSString *urlName = @"/var/mobile/Containers/Data/Application/727B0832-CA10-418E-A86C-A09E1D8E5AF6/Documents/1.mp4" //按如下调用后 NSString *fileName = [[NSFileManager defaultManager] displayNameAtPa
js获取base64编码 和文件名
// 图片上传 $('#file').change(function (){ var filename=this.files['0']['name'];//文件名 //切割 获取文件名 arr=this.files['0']['name'].split(&quot;.&quot;); var filetype=arr[(arr.length-...
如何从一个标准url里取文件名?
思路:首先获取到文件名+后缀,获取方法有parse_url,basename,然后再去掉后缀,至于去掉方法有截取explode,或者strpos+strstr+substr截取
Delphi 获取文件名
用OpenDialog.FileName做参数   ExpandFileName() 返回文件的全路径(含驱动器、路径)  ExtractFileExt() 从文件名中抽取扩展名  ExtractFileName() 从文件名中抽取不含路径的文件名  ExtractFilePath() 从文件名中抽取路径名  ExtractFileDir() 从文件名中抽取目录名  ExtractFileDr...
webClient获取下载文件名示例(不在地址中获取)
在不使用从url获取下载文件名的情况下获取下载文件服务器指定的文件名。
获取文件的拓展名和content-type -- java实现
我们在对文件进行操作时,经常会用到文件的拓展名和content-type,比如从网上下载文件,本地文件管理,按照文件的MIME类型打开文件等等。以下是我觉得目前我实现的比较好的几个方法。
通过文件名判断并获取OSS服务文件上传时文件的contentType
/** * 通过文件名判断并获取OSS服务文件上传时文件的contentType * * @param fileName 文件名 * @return 文件的contentType */ public static final String getContentType(String fileName) { String F...
如何通过url获取文件名
现有url:rnhttp://localhost/sec/cn/gsjj.html rn如何从上面的url获取rncn/gsjj.htm
JS判断URL尾缀格式
var f = function(e) {     if (!e || typeof e != 'string') return null;     e = e.split('.');     e = e[e.length - 1];     var a = ['cd', 'ogg', 'mp3', 'asf', 'wma', 'wav', 'mp3pro', 'rm', 'real', 
JS——获取路径中的文件名
var i = tmp_imgpath.lastIndexOf("\\"); console.log(i); console.log(tmp_imgpath.slice(i+1)); var tmp_imgname = tmp_imgpath.slice(i+1);
Java下载文件功能详解,方式通过传递文件名下载
展示页面html页面项目使用的是VM页面  $!promotion.enclosure  为文件名称。&amp;lt;input type=&quot;button&quot; id=&quot;toExecl&quot; onclick=&quot;downxxxEnclosure('$!promotion.enclosure')&quot;  value=&quot;下载内容&quot;&amp;gt;js代码需注意因为文件可能不存在 所以使用的是先用ajxa异步查询文件是否存在func...
java 截取文件后缀 方法
// 截取文件后缀 String sp=file.toString(); String fileType = sp.substring(path.getAbsoluteFile() .toString().lastIndexOf("."));
获取文件mime类型
package cn.itcast.web.servlet; import java.io.IOException; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.htt...