c# - "The given path' 不支持 s 格式”尝试根据当前时间创建文件时

标签 c# io filenames streamwriter

有什么方法可以用变量名保存文件吗?

例如,我有这段代码,但在 StreamWriter 中出现错误:

string hour = DateTime.Now.ToString("HH:mm:ss");
string date = DateTime.Now.ToShortDateString();
string filename = "Numbers " + date + " " + hours+ ".txt";
string path = @"C:\ShowMySms\" + filename;

using (System.IO.StreamWriter file = new System.IO.StreamWriter(path, true)) {
    file.WriteLine("test");
}

我也试过用

using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\ShowMySms\" + filename, true))

但两种方式都给我一个错误。

有什么方法可以让我使用 StreamWriter 以不同的方式导出文件?

提前致谢!

编辑:错误是

The given path's format is not supported.

我试过了

Path.Combine(path, filename);

并将路径放入 StreamWriter 但仍然出现相同的错误...

最佳答案

尝试改用这种格式:

string filename = string.Format("Numbers_yyyyMMdd_HHmmss.txt", date);

这将为您提供如下文件名

Numbers_20131118_155410.txt

在您的文件名中不包含“危险”和非法字符(如 :)......

关于c# - "The given path' 不支持 s 格式”尝试根据当前时间创建文件时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20050552/

相关文章:

javascript - 获取 ASP 文本框的更改值

c# - 异步,只有一个等待

java - 捕获异常后继续读取文件

python - 批量搜索并用python替换文件名中的字符串

bash - 在 bash 中动态重命名文件?

.htaccess - htaccess 带空格的文件名损坏

c# - 使用双引号和参数添加到查询

c# - 如何将 .Net Framework 从 3.5 版更改为 4.0 版

python - 从正在 Python 中写入的打开文件句柄中读取

c++ - 应该多久打开/关闭一次 fstream 对象 C++