画像を保存するプログラムがありますが、デバッグすると次のエラーが発生します。
指定されたパスの形式はサポートされていません。
サポートされていない理由と、この問題を解決する方法を知りたいです。前もって感謝します
マイコード
BitmapSource image = BitmapSource.Create(colorFrame.Width, colorFrame.Height,
96, 96, PixelFormats.Bgr32, null, pixels, stride);
ImageFormat format = ImageFormat.Jpeg;
string file_name = "C:\\Kinected\\Images\\Kinect" + bb1 + ".jpg";
image.Save(file_name, format);
編集
コードを追加しましたが、正しくコンパイルされますが、ファイルが保存されません。コードは次のとおりです。
string mypath = System.IO.Path.Combine(@"C:\", "Kinected", "Images");
if (!Directory.Exists(mypath))
{
Directory.CreateDirectory(mypath);
file_name = System.IO.Path.Combine(mypath, "Kinect 1" + bb1 + ".jpeg");
}
if (file_name == null)
{
return;
}
if (!Directory.Exists(file_name))
{
Directory.CreateDirectory(file_name);
}
編集
以下のコードをすべて追加しましたが、それでもThe given path's format is not supported.
エラーが発生します。再度、感謝します。
BitmapSource image = BitmapSource.Create(
colorFrame.Width, colorFrame.Height, 96, 96, PixelFormats.Bgr32, null, pixels, stride);
totalFrames = colorFrame.FrameNumber;
ImageFormat format = ImageFormat.Jpeg;
if (PersonDetected == true)
{
if (!Directory.Exists(mypath))
{
Directory.CreateDirectory(mypath);
file_name = "C:\\Kinected\\Images\\Kinect 1 " + bb1 + ".jpeg";
}
if (file_name == null || mypath == null || image == null)
{
if (mypath == null)
{
mypath = System.IO.Path.Combine("D:/", "Kinected", "Images");
if (!Directory.Exists(mypath))
{
Directory.CreateDirectory(mypath);
}
}
if (file_name == null)
{
file_name = "D:\\Kinected\\Images\\Kinect " + bb1 + ".jpeg";
}
if (image == null)
{
image = BitmapSource.Create(
colorFrame.Width, colorFrame.Height, 96, 96, PixelFormats.Bgr32, null, pixels, stride);
}
}
if (totalFrames % 10 == 0)
{
if (file_name != null && image != null && format != null)
{
image.Save(file_name, format);//where I get the error
}
}
}