我有一个图表控件,我想保存图表后,它是绘制。我有一个问题,可能是在路径,我想保存图像,但我不确定。
代码如下:
string dir = $"{System.IO.Directory.GetCurrentDirectory()}\\Charts\\{DateTime.Now.ToString()}.png";
chart1.SaveImage(dir, ChartImageFormat.Png);
此目录为:“C:\Users\Hendawi\Desktop\ESI-USB-API\Examples\C#\bin\Debug\Charts\2023-04-03 5:18:41 PM.png”
我得到的错误是:System.NotSupportedException:'不支持给定路径的格式。'
例如,如果我尝试将文件保存在桌面上,它就可以工作。我不知道我的路径有什么问题。
编辑(已解决):由于在Windows中命名文件时不支持在Datetime.Now()中生成的@ DanielA. White. Colons
2条答案
按热度按时间omtl5h9j1#
默认情况下使用
DateTime.ToString()
可能会在文件名中包含无效字符(取决于您的区域设置),如'/'和':'。通常,您会在
String.Format()
或String interpolation中使用Standard date and time format string或Custom date and time format string,以使用当前日期来构造兼容的文件名:这将导致
8yparm6h2#
典型的
DateTime.Now.ToString()
在时间格式中包含冒号/正斜杠。例如:4/3/2023 3:35:45 PM
这不是一个valid file name。你可以很容易地编写一个扩展来支持文件友好的日期时间: