我创建了一个创建压缩备份的小程序。请参阅下面的编辑。
这些文件中有一个冒号,当我试图运行它时,该冒号将生成一个NotSupportedException。
如果我有以下路径:
C:\Testing facility\SampleDirectory
为了使我的程序能够处理文件路径,但仍然找到正确的目录/文件,我可以用什么替代:呢?
这篇MSDN文章中的例子没有提到冒号或其他非法字符的任何问题,我是不是做错了什么?
我的目录压缩代码如下:
private void CompressDirectory()
{
zipPath = backupPath + DateTime.Now.ToString().Replace(':', '-') + ").";
try
{
ZipFile.CreateFromDirectory(sourcePath, zipPath, CompressionLevel.Optimal, true);
getresultmessage();
}
catch (IOException v)
{
errMsg = "Failed trying to start compression. \n" + v.ToString();
}
}编辑:
经过更多的调试后,我意识到文件字符串由于一些原因而被双附加。我的意思是,sourcePath已经获得了以下价值:
"C:\\Testing facility\\SampleDirectory"
在备份路径中发生了类似的事件。
这是为什么,我能做些什么来解决它呢?
发布于 2014-09-30 11:40:49
试试这个,也许对你来说很好。
@“C:\测试工具\SampleDirectory”
发布于 2014-09-30 11:40:54
取代:
DateTime.Now.ToString().Replace(':', '-')
通过以下方式:
DateTime.Now.ToString("yyyy-MM-dd-HH-mm")
删除")."
至于您的编辑,您可以看到\\,因为\是转义。
https://stackoverflow.com/questions/26119875
复制相似问题