我已经开发了一个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
作为目的地并创建一个文件。
如果有更好的方法,我可以知道吗?
答案 0 :(得分:1)
虽然这可能是代码审查问题而不是堆栈溢出...
就个人而言,我不是硬编码生成的文件名,而是将其作为参数,所以如果你必须移动它,那就好了,不需要重新编码。你可以考虑将文件FTP到服务器,然后你可能会进入安全存储用户名和密码的领域,但这是一个考虑因素。