/// <summary>
/// 检查是否文件是否图片并保存
/// </summary>
/// <param name="file">文件</param>
/// <param name="savePath">保存文件的目录(例:/Img/Mark/)</param>
/// <param name="newFileName">重命名后文件的名称</param>
/// <returns>是否成功</returns>
private bool SaveImage(HttpPostedFileBase file, string savePath, out string newFileName)
{
bool isSuc = false;
newFileName = string.Empty;
int contentLen = file.ContentLength;
byte[] fileByte = new byte[2];
using (Stream stream = file.InputStream)
{
stream.Read(fileByte, 0, 2);
string fileFlag = string.Empty;
if (fileByte != null && fileByte.Length > 0)
{
fileFlag = fileByte[0].ToString() fileByte[1].ToString();
Dictionary<string, string> dicImageByte = new Dictionary<string, string> {
{ "255216","jpg"},{ "7173","gif"},{ "6677","bmp"},{ "13780","png"} };
string imageType = string.Empty;
bool isImage = dicImageByte.TryGetValue(fileFlag, out imageType);
if (isImage)
{
string fileName = Guid.NewGuid().ToString() "." imageType;
file.SaveAs(Path.Combine(Server.MapPath(savePath), fileName));
newFileName = savePath fileName;
isSuc = true;
}
}
stream.Close();
return isSuc;
}
}
更多专业前端知识,请上 【猿2048】www.mk2048.com