c# - StreamWriter将Date添加到文件名时出现问题

时间:2017-11-13 05:47:32

标签: c# streamwriter

我对System.IO.StreamWriter有一个小问题。

StreamWriter Write = 
   new StreamWriter(@"../Debug/Payments/_" + dp.Value.ToString() + ".txt");

当我运行应用程序时,它会返回:

  

未处理的类型' System.NotSupportedException'发生在mscorlib.dll中   附加信息:不支持给定路径的格式。

2 个答案:

答案 0 :(得分:3)

试试这个:

string filename= DateTime.Now.ToString("yyyy_MM_dd");
string strpath = Server.MapPath("~/Debug/Payments/_"+ filename + ".txt");
StreamWriter Write = new StreamWriter(strpath);

您的问题在于格式。

答案 1 :(得分:2)

由于您说dp是一个日期选择器,ToString()几乎肯定会在文件名中插入无效字符,例如:,例如

Payments/_2017/11/13 1:14:13 PM.txt

另外,根据评论,您需要更改斜线方向。

您需要使用更安全的日期格式,如下所示:

$@"..\Debug\Payments\_{dp.Value:yyyy-MM-dd}.txt"