delphi GetMIMEType 查询文件MIME类型函数  
官方Delphi 学习QQ群: 682628230(三千人)
频道

delphi GetMIMEType 查询文件MIME类型函数


uses Registry;

function GetMIMEType(FileName: String): String;

var
reg: TRegistry;
ext: String;
list: TStringList;
begin
Result := '';
ext := LowerCase(ExtractFileExt(Filename));
reg := TRegistry.Create;
try
reg.RootKey := HKEY_CLASSES_ROOT;
if reg.OpenKeyReadOnly('\' + ext) then begin
Result := reg.ReadString('Content Type');
reg.CloseKey;
end;
if Result = '' then begin
if reg.OpenKeyReadOnly('\MIME\Database\Content Type') then
begin
list := TStringList.Create;
try
reg.GetKeyNames(list);
for i := 0 to list.Count - 1 do begin
if Reg.OpenKeyReadOnly('\MIME\Database\Content
Type\' + list[i]) then begin
if AnsiSameText(ext,
reg.ReadString('Extension')) then begin
Result := list[i];
Break;
end;
end;
end;
finally
list.Free;
end;
reg.CloseKey;
end;
end;
finally
reg.Free;
end;
if Result = '' then Result := 'application/octet-stream';
end;
推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.1002299785614 seconds