我有一个以下字符串:
string ImgName="Image.jpg";
现在我想把这个词从“。”中分开。并将文件名和扩展名保存在单独的字符串中。
因为在我的数据库中,我想在两个不同的字段中保存文件名及其扩展名。
答案 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());