当前位置: 首页 > 编程语言 > C#

如何从C#中存在的目录中获取文件名?Share

时间:2023-04-10 13:30:13 C#

如何从C#中存在的目录中获取文件名?我想按顺序提取窗口浏览器中存在的所有文件名。我用谷歌搜索并找到了很多答案,但这不起作用。我有以下顺序的文件名:video_1video_2video_3video_10video_15video_20video_21我想要相同的顺序,但结果如下所示。video_1video_10video_10video_2video_20video_21我尝试了以下代码:varfileNames=Directory.GetFiles(basePath,"*"+fileExtension)//Notworkedvarfilenames=info.GetFiles().OrderBy(p=>p.CreationTIme).ToArray();//没用谁能告诉我怎么做?顺序“不正确”的原因是名称是字符串,因此按字符串排序。你想要的是按数字部分排序:DirectoryInfoinfo=newDirectoryInfo("");varfiles=info.GetFiles().OrderBy(p=>p.FullName.Split('_')[0]).ThenBy(p=>int.Parse(p.FullName.Split('_')[1]));如果您不确定格式是否完全相同(使用_然后是有效数字),那么您可以:以上是C#学习教程:如何从C#中存在的目录中获取文件名?如果分享的内容对你有用,需要了解更多C#学习教程,希望你多多关注——FuncparseIntOrDefault=(input,defaultValue)=>{intvalue=defaultValue;int.TryParse(输入,输出值);返回值;};varresult=fromfileininfo.GetFiles()letsections=file.FullName.Split('_')orderbysections[0],sections.Length==2?parseIntOrDefault(sections[1],int.MaxValue):int.MaxValue选择文件;本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: