情况: 我一直试图从数据库中获取图片并将其放在图片框上。数据库是BLOB类型。我尝试了给我的方法(How to retrieve image from database and paste to picturebox?),遗憾的是没有任何效果。 因此,我决定使用字符串并获取图像的完整路径,而不是BLOB。
问题:斜线消失了。 Database example
代码:
private void pbox1_Click(object sender, EventArgs e)
{
OpenFileDialog rest = new OpenFileDialog();
rest.Filter = "images| *.JPG; *.PNG; *.GIF";
if (rest.ShowDialog() == DialogResult.OK)
{
pbox1.Image = Image.FromFile(rest.FileName);
filename = Path.GetFullPath(rest.FileName);
}
}
我将其插入数据库(“filename”是一个全局变量):
MySqlCommand comm = new MySqlCommand("INSERT INTO casestudyprofile(lastname, firstname, birthdate, status, caseage, program, dateJoined, picture, address) VALUES('" + lname + "', '" + fname + "', '" + dtbirth.Value.Date.ToString("yyyyMMdd") + "','" + status + "','" + age + "','" + program + "','" + dtjoin.Value.Date.ToString("yyyy/MM/dd") + "', '" + filename + "', '" + address + "')", conn);
然后我称之为:
pbox2.ImageLocation = dt.Rows[0]["picture"].ToString();
我发现它不起作用,因为存储在数据库中的完整路径删除了斜线。我手动将它们放在数据库中并且工作正常。但是,如何在代码中?非常感谢任何帮助。
答案 0 :(得分:0)
filename = Path.GetFullPath(rest.FileName).Replace(“\”,“\\”);