我做错了什么? 我的主要问题是我收到一条错误消息:
error : The given path's format is not supported
我想将项目本身的文件保存在我已经创建的名为:Screenshots 的文件夹下
public void TakeScreenShot()
{
string pth = System.Reflection.Assembly.GetCallingAssembly().CodeBase;
string actualPath = pth.Substring(0, pth.LastIndexOf("bin"));
string projectPath = new Uri(actualPath).LocalPath;
Screenshot ss = ((ITakesScreenshot)_driver).GetScreenshot();
string screenshot = ss.AsBase64EncodedString;
byte[] screenshotAsByteArray = ss.AsByteArray;
ss.SaveAsFile(projectPath+"Screenshots\\Drisha"+DateTime.Now.ToString()+".jpeg", ImageFormat.Jpeg);
}
最佳答案
我不知道你的机器设置的是什么文化,但我假设调用 DateTime.Now.ToString()
会给你类似 08/02/2017 11:41:30
包含斜杠和冒号,因此不是有效路径。
尝试在 ToString()
中指定一种格式,如下所示:
ss.SaveAsFile(projectPath+"Screenshots\\Drisha"+DateTime.Now.ToString("ddMMyyyyHHmmss")+".jpeg", ImageFormat.Jpeg);
作为旁注,您不应连接字符串来创建路径,而应使用 Path.Combine
。
ss.SaveAsFile(Path.Combine(projectPath, "Screenshots\\Drisha", DateTime.Now.ToString("ddMMyyyyHHmmss"), ".jpeg"), ImageFormat.Jpeg);
关于c# - 错误 :The given path's format is not supported,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42112068/