每天通过 C# 控制台应用程序在服务器上创建和保存一个文本文件

Creating and saving a text file on a server every day through a C# console application

我开发了一个 C# console application,我将其安排在每天早上运行的 windows 服务器上,并在 C drive 中名为 FTP 的文件夹中创建了一个文本文件服务器的一些数据从 SQL server 检索,一些外部用户将使用 FTP 访问此文件。我使用了以下代码

 FileStream fs = File.Create("test.txt");

            int i = 0;
            StreamWriter sw = null;

            sw = new StreamWriter("C:\FTP\test.txt", false);
            for (i = 0; i < dtlist.Columns.Count - 1; i++)
            {
                sw.Write(dtlist.Columns[i].ColumnName + "\t");
            }
            sw.Write(dtlist.Columns[i].ColumnName);
            sw.WriteLine();


            foreach (DataRow row in dtlist.Rows)
            {
                object[] array = row.ItemArray;

                for (i = 0; i < array.Length - 1; i++)
                {
                    sw.Write(array[i].ToString() + "\t");
                }
                sw.Write(array[i].ToString());
                sw.WriteLine();
            }

            sw.Close();

正如我们所看到的,当我在服务器本身上安排此应用程序时,我已经直接给出了服务器上的文件路径,我想知道这是否是正确的方法,或者我是否应该更好地使用服务器地址 10.0.0.10 作为目标并创建一个文件。

请问有更好的方法吗?

虽然这可能更像是一个代码审查问题而不是堆栈溢出...

就个人而言,我不会对结果文件名进行硬编码,而是将其作为参数,因此如果您必须移动它,那很好,不需要重新编码。您可以考虑 FTP 将文件发送到服务器,但是,您可能会进入安全存储用户名和密码的领域,但这是一个考虑因素。