4Manuals

  • PDF Cloud HOME

Dotnet Core-找到相对于您所在文件夹的所有文件,然后找到最后添加的csv文件 Download

    获取Hough线的交点OpenCV C ++ 如何将字符串“ text1”设置为包含项目text1,text2,test3的组合框的选定项目? 为什么System.Net.Mail.MailAddress构造函数在域部分中解析带有斜杠“ /”的电子邮件? Android 10,API29:在应用程序文件夹中使用C ++库编写文件会使应用程序崩溃 Unity-LineRenderer没有出现在版本(2D)上 按下按钮后,电话中未显示通知 ASP.net,使用WebConfig httpErrors重定向到区域内的控制器不起作用 获取会议室详细信息 我们如何将参数Line转换为Station? 网络核心:查找实体框架核心的主键和反射

所以相对简单..应该可以将某些内容拼凑在一起,但是我被困在相对目录路径中并找到实际的最新文件。

我发现了

        var directory = new DirectoryInfo("C:\\MyDirectory");
        var latestFile = directory.GetFiles().OrderByDescending(f => f.LastWriteTime).First();

然后我意识到我不确定如何在当前类的下两个目录中引用该文件。

此外,GetFiles上不存在“ .OrderByDecending”。

这是目录布局...我正在使用DATASuburbInitialiser:

enter image description here

如何在SuburbCSV目录中相对(在发布模式下也可以)获得最新的csv文件?

我将使用resx文件,但要注意的是,您必须停止应用程序及其需要保持运行状态的Web应用程序,并且我需要不时更新郊区。

3 个答案:

答案 0 :(得分:1)

  1. GetFiles()返回一个数组,当您捕获了所有要查找的文件后,肯定可以使用OrderByDescending。您应该在课堂上添加对System.Linq的引用,并使用directory.GetFiles(*.csv)之类的搜索模式仅将CSV文件作为目标,尽管我会选择EnumerateFiles以便不收集项目数组你无意做任何事情。

  2. 运行时中文件夹的位置与当前类无关。它与应用从何处执行有关。这很可能是bin文件夹,您可以尝试使用相对路径,例如..\..\SUBURB.Initialisations\SuburbCSV,并根据需要添加“ .. \”和其他父文件夹。一旦确定拥有一个在某些子文件夹中包含文件的父目录,并且您真的不在乎查找特定的子文件夹,则也可以利用SearchOption.AllDirectories。但是,我只会在测试中这样做。

答案 1 :(得分:0)

我要遵循“停止讲话,告诉我您的代码”一词,所以这是我不言自明的代码。

class Program
    {
        static List<FileInfo> GetFiles(string path, bool recursive = false)
        {
            List<FileInfo> files = new List<FileInfo>();
            DirectoryInfo di = new DirectoryInfo(path);
            files.AddRange(di.GetFiles());
            if (recursive)
            {
                var directories = di.GetDirectories();
                if(directories.Length > 0)
                    foreach(var dir in directories)
                        files.AddRange(GetFiles(dir.FullName, true));
            }
            return files;
        }
        static List<string> OrderByCreation(List<FileInfo> files, bool descend = false)
        {
            IOrderedEnumerable<FileInfo> orderedfiles = null;
            orderedfiles = descend
                ? files.OrderByDescending(item => item.CreationTime)
                : files.OrderBy(item => item.CreationTime);
            return orderedfiles.Select(item => item.FullName).ToList();
        }
        static void Main(string[] args)
        {
            var list = GetFiles(@"C:\MyDirectory", true);
            var files = OrderByCreation(list, true);
        }
    }

答案 2 :(得分:0)

您需要在.cs文件中添加使用“ using System.Linq;”。



Similar searches
    RStudio:系统找不到指定的路径 如何在启动时设置浏览器的宽度/高度,如何在开始时添加标签? ChromeDriver Selenium Python 如何检查IPS板论坛错误EX0问题 Samsung RS2577SW Refrigerator User Manual 返回给定字符串中较小的(按字典顺序)的字符串