C#获取文件扩展名不用extension
时间: 2024-10-14 20:05:47 浏览: 17
在C#中,如果你想要获取一个文件的扩展名但不想使用`Path.GetExtension()`方法,你可以使用正则表达式或者字符串分割的方式来实现。这里有两个简单的例子:
**方法一:正则表达式**
```csharp
string filePath = "example.txt";
string extensionWithoutPeriod = Regex.Match(filePath, @"\.[^\.]*$").Value;
```
在这个例子中,`\.`匹配点号,`[^\.]*$`匹配除点外的任意字符直到字符串结束。
**方法二:字符串分割**
```csharp
string filePath = "example.txt";
int lastDotIndex = filePath.LastIndexOf('.');
if (lastDotIndex != -1)
{
string extension = filePath.Substring(lastDotIndex + 1);
}
```
这个方法通过查找最后一个`.`的位置,并从该位置开始截取字符串,得到扩展名。
相关问题
C# 路径获取文件名字
在C#中,你可以使用`Path.GetFileName()`方法来从路径中获取文件名。这个方法接受一个字符串参数,该参数可以是一个完整的文件路径或相对路径,然后返回最后的部分,即文件名(不包括扩展名)。例如:
```csharp
string fullPath = @"C:\Users\John\Documents\example.txt";
string fileName = Path.GetFileName(fullPath);
```
在这个例子中,`fileName`将会是`"example.txt"`。
如果你想要同时获取文件名和扩展名,可以使用`Path.GetFileNameWithoutExtension()`和`Path.GetExtension()`方法组合:
```csharp
string fileNameWithExt = Path.GetFileName(fullPath);
string extension = Path.GetExtension(fileNameWithExt);
```
`extension`将包含`.`和扩展名,如`.txt`。
C#判断文件后缀名从未跳过
你可以使用以下代码来判断一个文件的后缀名是否是指定的后缀名:
```csharp
string fileName = "example.txt";
string extension = Path.GetExtension(fileName);
if (extension.Equals(".txt", StringComparison.OrdinalIgnoreCase))
{
// 文件后缀名是 .txt
// 在这里执行相应的操作
}
```
其中 `fileName` 是文件的完整路径, `Path.GetExtension` 方法可以获取文件的后缀名(包含 `.`)。然后使用 `Equals` 方法来比较后缀名是否是指定的后缀名,这里的比较忽略大小写。如果文件后缀名是指定的后缀名,则可以在 `if` 语句中执行相应的操作。
阅读全文