我想获取url的扩展名文件。获取文件的扩展名(编辑)
例如获得扩展名http://www.iranfairco.com/download-file/02912bb889cb24。 如果扩展名这个文件是gif。
编辑:
比如这个网址"http://www.online-convert.com/result/d8b423c3cbc05000cc52ce7015873e72"
请帮助我如何能得到这个网址的延伸?
我想获取url的扩展名文件。获取文件的扩展名(编辑)
例如获得扩展名http://www.iranfairco.com/download-file/02912bb889cb24。 如果扩展名这个文件是gif。
编辑:
比如这个网址"http://www.online-convert.com/result/d8b423c3cbc05000cc52ce7015873e72"
请帮助我如何能得到这个网址的延伸?
为什么Path.GetExtension不适合你?
编辑
啊,所以你的网址没有指定你的扩展名。这意味着任何东西都可能在它后面。
只需检查url的字符串值,就看不到它后面会有什么。您的(第二个)示例指向(最终)一个.gif文件,但它也可能是.jpg,.doc(甚至是.exe)。
您将需要做一个webrequest,看看你回来。通常你可以尝试一个HEAD来获取标题(并检查内容类型),但我认为这不会起作用。试试Fiddler看看你回来了什么,然后你可以改进你的问题。
你可以将字符串分割为char'。'并获得了最后一个字符串返回数组中..
no.this url文件名是hash.filename = 02912bb889cb24 – ashkufaraz
如果字符串中没有文件扩展名,那么这个例子不是。不是 – musefan
不明显,因为这个例子是一个失败......这是怎么回事? – Rob
检查出在这里:
http://www.java2s.com/Code/CSharp/Network/GetHTTPResponseheaders.htm
你会有兴趣这应该给你一些像“图像/ GIF”了的response.ContentType gif图片
这取决于设置的内容头。鉴于asp.net标签,我会想象@Curt的答案是更正确的,而且需要的是实际在asp中应用内容类型。 – stevenrcfox
@Overflow,我知道它需要服务器在处理该URL调用时需要设置内容类型。我的假设是,该URL用于提供文件下载(如URL本身所建议的),并且很可能服务器将返回仅包含图像的响应流,并因此设置了内容类型。当然,内容类型可能是错误的,这取决于实现。但要做到这一点,实施应提供正确的内容类型,因此我的答案将能够找出文件类型 – musefan
此URL似乎可能链接到将为文件下载的页面。
02912bb889cb24
可能是该文件的数据库引用。
因此没有获得任何API为这个系统,我不认为它可以在所有制定出通过该URL访问的文件的扩展名
我倾向于认为这是最准确的答案,有几个补充,1.当文件上传时,您应该能够获得内容类型并将其保存到数据库与文件。然后下载文件时,您应该能够再次设置内容类型。 – stevenrcfox
试试这个
string path = @"http://www.iranfairco.com/download-file/02912bb889cb24.gif";
string e = Path.GetExtension(path);
url等于29493903并不等于290930232.gif – ashkufaraz
我见这里没有任何表示gif的东西。 url不包含'.gif',http请求返回404。 – CodesInChaos