这似乎是一个非常奇怪的问题,我无法弄清楚我的生活.我有一个如下所示的路径(字符串):
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)
但这也会失败.
使用Path类.它有一个GetExtension()方法:
var path = @"D:\development\php\bchat\chat\index.php";
if( Path.GetExtension( path.ToUpperInvariant() ) == ".PHP" )
{}
Run Code Online (Sandbox Code Playgroud)
编辑:添加检查上/下案例