如何拆分文件名和扩展名

时间:2014-02-16 09:11:27

标签: c# asp.net

我有一个以下字符串:

string ImgName="Image.jpg";

现在我想把这个词从“。”中分开。并将文件名和扩展名保存在单独的字符串中。

因为在我的数据库中,我想在两个不同的字段中保存文件名及其扩展名。

3 个答案:

答案 0 :(得分:18)

您可以使用System.IO.Path类:

var ext  = Path.GetExtension(filename);
var name = Path.GetFileNameWithoutExtension(filename);

答案 1 :(得分:2)

解决方案1:如果您的文件名中只有一个点,则可以使用String.Split()函数

试试这个:

string ImgName = "Image.jpg";
var name = ImgName.Split('.');

String filename=name[0];
String fileext=name[1];

OR

解决方案2:如果您的文件名中有多个点(或一个点),则可以使用Substring()函数,如下所示:

试试这个:

string ImgName = "Image.jpg";
int lastIndex = ImgName.LastIndexOf('.');
var name = ImgName.Substring(0,lastIndex);
var ext = ImgName.Substring(lastIndex + 1);

答案 2 :(得分:0)

string ImgName = "Image.jpg";
string name = new string(ImgName.TakeWhile(c => c != '.').ToArray());
string extension = new string(ImgName.SkipWhile(c => c != '.').Skip(1).ToArray());