我有一个名为a.b.c.d的文件名 如果我使用Path.GetFileNameWithoutExtension,我得到a.b.c,我想知道如何只获得 a 部分
答案 0 :(得分:2)
这是一种方式:
var path = "asdf.bsdf.csdf";
while(Path.HasExtension(path))
path = Path.GetFileNameWithoutExtension(path);
这是另一个:
path = "asdf.bsdf.csdf";
path = path.Substring(0, path.IndexOf('.'));
请注意,如果path
实际上是一个路径而不仅仅是文件名,后者需要稍加修改,而第一个则不需要。
还有很多其他方法可以做到这一点 - 这只是两个例子。
答案 1 :(得分:1)
选项1:
string p = Path.GFNWE (Path.GFNWE (Path.GFNWE (original)));
选项2:
string p = original;
int i;
while ((i = p.LastIndexOf ('.')) > 0) {
p = Path.GetFileNameWithoutExtension (p);
}
选项3 :(小心,区分大小写)
if (original.EndsWith (".b.c.d"))
original = original.Substring (0, original.Length - ".b.c.d".Length);
答案 2 :(得分:1)
你可以试试像
这样的东西Path.GetFileName("a.b.c.d").Split('.')[0]
答案 3 :(得分:1)
string fileName = "a.b.c.d";
string whatYouWant = fileName.Substring(0, fileName.IndexOf('.'));