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

时间:2015-08-17 14:37:19

标签: c# ftp windows-server-2003

我已经开发了一个C# console application,我将它安排在每天早上运行的Windows服务器上,并在服务器的FTP中名为C drive的文件夹中创建一个文本文件,其中包含一些数据从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作为目的地并创建一个文件。

如果有更好的方法,我可以知道吗?

1 个答案:

答案 0 :(得分:1)

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

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