我坚持保存System.Drawing.Bitmap
类型的数组,每个位图都是单独的文件。
我有一个数组"调查"。这个数组存储了几个double类型的列表。
对于每个List,我想创建一个位图,然后将其保存为bmp文件。
行 raport[i].Save(Path.Combine(myfilepath, nets[i] + ".bmp"));
返回 TypeInitializationException - 我不知道原因。
作品nets[i]
是一个带有预期文件名的字典(int,string)。
public void save_results()
{
System.Drawing.Bitmap[] raport = new System.Drawing.Bitmap[survey.Length];
for (int i = 0; i < survey.Length; i++)
{
raport[i] = new System.Drawing.Bitmap(survey[i].Count, 1000);
for (int x = 0; x < survey[i].Count; x++)
for (int y = 0; y < 1000; y++)
raport[i].SetPixel(x, y, Color.FromArgb(255, 255, 255));
for (int x = 0; x < survey[i].Count; x++)
raport[i].SetPixel(x, (int)(1000 - Math.Floor(survey[i][x] * 1000) >= 1000 ? 999 : 1000 - Math.Floor(survey[i][x] * 1000)), Color.FromArgb(0, 0, 0));
raport[i].Save(Path.Combine(myfilepath, nets[i] + ".bmp"));
}
}
答案 0 :(得分:0)
最后,问题与变量&#34; myfilepath&#34;有关。
变量被编译了#39;从几个文件路径 - 所有这些字符串应该是static
:
public static string mydoc= Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
public static string myfilepath_p = Path.Combine(mydoc, "Demeter");
public static string myfilepath= Path.Combine(myfilepath_p, "regresja_liniowa");
最初,只有&#39; final&#39;引用代码中使用的变量是static
,导致错误的原因。
其余的代码工作正常。