Delphi 10.2.3 新增的TMimeTypes类  
官方Delphi 学习QQ群: 682628230(三千人)
频道

Delphi 10.2.3 新增的TMimeTypes类


Delphi 10.2.3 新增的TMimeTypes类,利用url中的文件扩展名,可以轻松得到url需要返回的HTTP content-type类型, 可以参考这里,现在查看AddDefTypes方法,几乎涵盖了所有的文件类型。为了使用TMimeTypes,我们不必建立他的实例,直接使用TMimeTypes.Default属性,这个属性是个类属性,可以直接使用并返回TMimeTypes的实例。


class property Default: TMimeTypes read GetDefault;

1.

这是GetDefault的实现代码,通过代码,我们看到,返回一个唯一实例。


class function TMimeTypes.GetDefault: TMimeTypes;

var

  LMime: TMimeTypes;

begin

  if FDefault = nil then

  begin

    TMonitor.Enter(FLock);

    try

      if FDefault = nil then

      begin

        LMime := TMimeTypes.Create;

        LMime.AddDefTypes;

        LMime.AddOSTypes;

        FDefault := LMime;

      end;

    finally

      TMonitor.Exit(FLock);

    end;

  end;

  Result := FDefault;

end;


下面,看看一个扩展名,对于一个url应返回内容的类型(HTTP content-type):


procedure TForm10.Button1Click(Sender: TObject);

var

  t:string;

  kind:TmimeTypes.TKind;

begin

  TMimeTypes.Default.GetExtInfo('htm',t,kind);

end;


运行后得到的结果:


367202-20190401092311358-601681702.png


有了TMimeTypes类,再也不用记该返回什么类型的url请求了!


此外,在这个System.Net.Mime单元中,还提供了其他重要意义的类,如TMultipartFormData,用来处理htm中的Form,支持文件的。

-----------------------------------


来源:https://blog.51cto.com/kinglandsoft/3224739



推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

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

执行时间: 0.036354064941406 seconds