我想将许多图片保存到SQL Server数据库文件中。如何压缩图片以存储在数据库中?我可以使用哪些技术?
请帮帮我
编辑后: 如何压缩和调整图片大小以存储在Sql Server数据库中?
答案 0 :(得分:4)
如果图片已经采用jpg和大多数其他格式,则图片压缩不会太多。您可以尝试在发送到SQL Server之前进一步压缩它们,但除非您有BMP,否则它可能不值得。
我建议您查看FILESTREAM将它们存储在SQL Server中(假设SQL Server 2008),这对于此类数据更有效。
答案 1 :(得分:1)
您可以以JPEG格式保存并包含该文件。为此,您可以使用Image.Save method。如果您想设置质量,可以使用Encoder.Compression。
您还应确保图像的分辨率不会太高。
答案 2 :(得分:0)
您可以通过将图像转换为字节数组来将图片存储在sql数据库中。您可以使用以下代码执行此操作:
byte[] ReadFile(string sPath)
{
byte[] data = null;
FileInfo fInfo = new FileInfo(sPath);
long numBytes = fInfo.Length;
FileStream fStream = new FileStream(sPath, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fStream);
data = br.ReadBytes((int)numBytes);
return data;
}