FileBytes写成文件并存档
昨晚,Insus.NET有写一篇《FileUpload上传图片前首先预览一下 》,里只有预览功能。
刚才有网友在SKYPE问及,那只有预览功能,并无上传功能。如果在例子中添加一个上传铵钮,参考以前的上传写法,似乎已经找不到上传的文件了。现在要把预览OK的图片,上传服务端,要怎样实现,还有在预览时,图片是按原实际尺寸显示,要怎样才能控制图片按比例显示?
问题有两个,一是预览时,控制显示尺寸。
你在ImageProcessFactory类别更改代码,如何更改,可参考:http://www.cnblogs.com/insus/articles/2060601.html
问题二,可以参考下列代码(图片存入目录,如果想以数据流存入数据库中,不在此例中):
protected void Button1_Click(object sender, EventArgs e)
{
//建立存储的目录
string directory = "Myfiles/";
//判断目录是否存在
if (!Directory.Exists(Server.MapPath(directory)))
{
//如果不存在,创建它
Directory.CreateDirectory(Server.MapPath(directory));
}
//新文件
string newFile = Server.MapPath(directory + Guid.NewGuid ().ToString() +".jpg");
if ((Session["UploadBytes"]) != null)
{
byte[] buffer = (byte[])(Session["UploadBytes"]);
File.WriteAllBytes(newFile, buffer);
}
}
{
//建立存储的目录
string directory = "Myfiles/";
//判断目录是否存在
if (!Directory.Exists(Server.MapPath(directory)))
{
//如果不存在,创建它
Directory.CreateDirectory(Server.MapPath(directory));
}
//新文件
string newFile = Server.MapPath(directory + Guid.NewGuid ().ToString() +".jpg");
if ((Session["UploadBytes"]) != null)
{
byte[] buffer = (byte[])(Session["UploadBytes"]);
File.WriteAllBytes(newFile, buffer);
}
}