检查字符串结尾的问题

The*_*i.9 1 c# string

这似乎是一个非常奇怪的问题,我无法弄清楚我的生活.我有一个如下所示的路径(字符串):

d:\研发\ PHP\bchat \聊天\的index.php

我需要检查有问题的文件是否是PHP文件.我认为最合乎逻辑的方法是从一个子串开始.到字符串的末尾,看看是否== .php

所以我试过:

bool isphp = (path.Substring(path.LastIndexOf('.')) == ".php") ? true : false;
Run Code Online (Sandbox Code Playgroud)

这总是返回false.我想也许最后有一个尾随空间搞砸了我,所以我在路径上放了一个TrimEnd().但这并没有改变任何事情.所以我试过这个:

bool isphp = (path.EndsWith(".php") == true) ? true : false;
Run Code Online (Sandbox Code Playgroud)

这也总是返回false.

编辑 我现在也试过这个:

bool isphp = (Path.GetExtension(path) == ".php");
Run Code Online (Sandbox Code Playgroud)

但这也会失败.

tan*_*ius 8

使用Path类.它有一个GetExtension()方法:

var path =  @"D:\development\php\bchat\chat\index.php";
if( Path.GetExtension( path.ToUpperInvariant() ) == ".PHP" )
{}
Run Code Online (Sandbox Code Playgroud)

编辑:添加检查上/下案例