new FileInfo(path).Name versus Path.GetFileName(path)

后端 未结 3 545
醉梦人生
醉梦人生 2020-12-09 19:28

which one is better to use and why? I mean in which aspects these two commands differ and how? Performance, readability, ...

new FileInfo(path).Name or

3条回答
  •  甜味超标
    2020-12-09 20:11

    Simply as you won't have to Create a new Object for using Path.GetFilename() it will perform better.

    Here is a Comparison for both:

    Code:

    Path.GetFileName("G:\\u.png")
    

    IL:

    IL_0000:  ldstr       "G:\u.png"
    IL_0005:  call        System.IO.Path.GetFileName
    

    Code:

    new FileInfo("G:\\u.png").Name
    

    IL:

    IL_0000:  ldstr       "G:\u.png"
    IL_0005:  newobj      System.IO.FileInfo..ctor
    IL_000A:  callvirt    System.IO.FileSystemInfo.get_Name
    

提交回复
热议问题