如何从给定的字符串中获得扩展?

时间:2016-06-20 06:21:14

标签: c#

我有字符串" \" screenshot.png \""

我想获得.png字符串的扩展名,我已经尝试了以下但是没有工作我必须做出哪些更改?

string p = ""\"screenshot.png\""";

string e = Path.GetExtension(p);
if (e == ".txt")
{
    Console.WriteLine(e);
}

4 个答案:

答案 0 :(得分:0)

android:scaleX="0.75"
android:scaleY="0.75"

尝试删除一些“符号,因为它与路径无关。

  

我有字符串“\”screenshot.png \“”。


所以字符串应该是var p = "\"screenshot.png\""; p = p.Replace("\"",""); string e = Path.GetExtension(p); // It would show .png 但是,即使字符串是上面的字符串或我的代码示例中的字符串,它也能正常工作。

答案 1 :(得分:0)

你应该将e与" .png"进行比较。但在此之前你需要修剪路径 所以

var path = "\"screenshot.png\"";    
path = path.Replace("\"","");
var e = Path.GetExtension(path);
if(e == ".png")
{
   Console.WriteLine(e);
}

答案 2 :(得分:0)

如果您的输入实际上包含双引号,则必须删除它们,因为它们不是路径的有效字符。因此,在调用path.Replace("\"", "")之前使用Path.GetExtension,正如梅森已经建议的那样。否则该方法抛出ArgumentException

编辑:" "\"screenshot.png\"" "甚至不是有效的字符串,它应该是" \"screenshot.png\" ",已经编辑过的非幸运,或者甚至更简单@"""screenshot.png"""

答案 3 :(得分:0)

string p = "\"screenshot.png\"";
string temp = p.Substring(p.LastIndexOf('.'));
Console.WriteLine(p.Substring(p.LastIndexOf('.'),temp.LastIndexOf("\"")));

试试上面的代码