0

我想创建一个带日期的文件。

DateTime time_now = DateTime::UtcNow;
String^  time_str = time_now.UtcNow.ToString();
String^  strPath = "C:\\Users\\Documents\\VS\\MyProject\\" + fileName + time_str + ".prc";

FileStream^  fs = File::Create(strPath); // in this line I get notSupportedException

我调试代码,文件名是:myfile05.01.2012 12:37:1222.prc

我认为问题是“:”我该如何解决?

4

2 回答 2

3

我个人会替换“。” 与 ”_” ;

strPath.Replace(".","_").Replace(":","_");

于 2012-01-05T13:10:02.593 回答
2

用下划线替换每个无效字符:

private string GetValidPath(string _Path)
        {
            String goodPath = _Path;
            foreach (char letter in System.IO.Path.GetInvalidPathChars())
            {
                goodPath = goodPath.Replace(letter, '_');
            }
            return goodPath;
        }

如果您正在使用 C++/CLI 进行编程,则有望移植此 C# 代码。

于 2012-01-05T13:18:38.963 回答