`

上传文件

阅读更多

using System;
using System.Data.SqlClient;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Imaging;
using System.IO;
using System.Web;
using System.Web.UI;

namespace My532ad.Func
{
/// <summary>
/// myUpimg 的摘要说明。
/// </summary>
public class myUpimg:Page
{
public string[] myupimgfile()
{

string[] myfilename = new string[3];
HttpFileCollection _files = HttpContext.Current.Request.Files;
for (int mynum = 0; mynum < _files.Count; mynum++)
{
string newfilename = "";
HttpPostedFile upimg = _files[mynum];

string imgPath, imgType;
string mPath;
imgPath = upimg.FileName;
imgType = imgPath.Substring(imgPath.LastIndexOf(".") + 1);
if (upimg.FileName != "")
{
imgPath = upimg.FileName;
imgType = imgPath.Substring(imgPath.LastIndexOf(".") + 1);
if (imgType == "jpg" || imgType == "jpeg")
{
string now = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + DateTime.Now.Millisecond.ToString();
string newname = now + upimg.ContentLength.ToString() + "." + imgType;
newfilename = newname;
//建立虚拟路径
mPath = Server.MapPath("../infoimg");
//保存文件
upimg.SaveAs(mPath + "\\" + newname);
//原始图片名称
string originalFilename = mPath + "\\" + newname;
//生成的高质量图片名称
string strGoodFile = mPath + "\\" + newname;
//生成的低质量图片名称
//string strBadFile = mPath + "\\" + newname;
//缩小的倍数
int iScale = 1;
//从文件取得图片对象
Image image = Image.FromFile(originalFilename);
//取得图片大小
Size size = new Size(image.Width/iScale, image.Height/iScale);
//新建一个bmp图片
Image bitmap = new Bitmap(size.Width, size.Height);
//新建一个画板
Graphics g = Graphics.FromImage(bitmap);
//设置高质量插值法
g.InterpolationMode = InterpolationMode.High;
//设置高质量,低速度呈现平滑程度
g.SmoothingMode = SmoothingMode.HighQuality;
//清空一下画布
g.Clear(Color.Blue);
//在指定位置画图
g.DrawImage(image, new Rectangle(0, 0, bitmap.Width, bitmap.Height), new Rectangle(0, 0, image.Width, image.Height), GraphicsUnit.Pixel);
//保存高清晰度的缩略图
//水印字 14:131,37; 10:90,34; 8:74,12
int fontsize = 10;
int mygx = 10;
int mygy = 20;
if (image.Width > 160)
{
fontsize = 14;
mygx = (image.Width - 160)/2;
}
if (image.Width > 121 && image.Width < 161)
{
fontsize = 10;
mygx = (image.Width - 121)/2;
}
if (image.Width < 122)
{
fontsize = 8;
if (image.Width > 74)
{
mygx = (image.Width - 74)/2;
}
else
{
mygx = 1;
}

}
if (image.Height > 37)
{
mygy = image.Height - 60;
}
else
{
mygy = 10;
}

Font f = new Font("楷体", fontsize);
Brush b = new SolidBrush(Color.FromArgb(150, 1, 1, 1));
Brush b1 = new SolidBrush(Color.FromArgb(150, 250, 250, 250));

g.DrawString("www.532ad.com", f, b, mygx, mygy + 20);
g.DrawString("www.532ad.com", f, b1, mygx, mygy + 21);


//Font f = new Font("宋体", fontsize);
//Brush b = new SolidBrush(Color.FromArgb( 150, 50, 50, 50 ));
//string addText ="青岛分类广告网 http://www.532ad.com";
//Font f1 = new Font("Impact", 14);
//Brush b1 = new SolidBrush(Color.FromArgb( 250, 50, 50, 50 ));
//string addText1 ="http://www.532ad.com";
image.Dispose();
g.Dispose();
//g.DrawString(addText, f, b, 10, 10);
if (imgType == "jpg" || imgType == "jpeg")
bitmap.Save(strGoodFile, ImageFormat.Jpeg);
if (imgType == "gif")
bitmap.Save(strGoodFile, ImageFormat.Gif);
//取得原图像的普通缩略图
//System.Drawing.Image img = image.GetThumbnailImage(image.Width/iScale, image.Height/iScale, null, IntPtr.Zero);
//保存普通缩略图
//if (imgType == "jpg" || imgType == "jpeg")
//img.Save(strBadFile, System.Drawing.Imaging.ImageFormat.Jpeg);
//if (imgType == "gif")
//img.Save(strBadFile, System.Drawing.Imaging.ImageFormat.Gif);
//img.Dispose();
}
if (imgType == "gif")
{
string now = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + DateTime.Now.Millisecond.ToString();
string newname = now + upimg.ContentLength.ToString() + "." + imgType;
newfilename = newname;
//建立虚拟路径
mPath = Server.MapPath("../infoimg");
//保存文件
upimg.SaveAs(mPath + "\\" + newname);
}
}
if (mynum == 0)
{
myfilename[mynum] = newfilename;
}
else
{
myfilename[mynum] = newfilename;

}

}
return myfilename;

}


public string[] myupimgfile1()
{

string[] myfilename = new string[3];
HttpFileCollection _files = HttpContext.Current.Request.Files;
for (int mynum = 0; mynum < _files.Count; mynum++)
{
string newfilename = "";
HttpPostedFile upimg = _files[mynum];

string imgPath, imgType;
string mPath;
imgPath = upimg.FileName;
imgType = imgPath.Substring(imgPath.LastIndexOf(".") + 1);
if (upimg.FileName != "")
{
imgPath = upimg.FileName;
imgType = imgPath.Substring(imgPath.LastIndexOf(".") + 1);
if (imgType == "jpg" || imgType == "jpeg" || imgType == "gif")
{
string now = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + DateTime.Now.Millisecond.ToString();
string newname = now + upimg.ContentLength.ToString() + "." + imgType;
newfilename = newname;
//建立虚拟路径
mPath = Server.MapPath("../infoimg");
//保存文件
upimg.SaveAs(mPath + "\\" + newname);
//原始图片名称
}
}
myfilename[mynum] = newfilename;

}
return myfilename;

}


public string[] myupimgfile2()
{

string[] myfilename = new string[3];
HttpFileCollection _files = HttpContext.Current.Request.Files;
for (int mynum = 0; mynum < _files.Count; mynum++)
{
string newfilename = "";
HttpPostedFile upimg = _files[mynum];

string imgPath, imgType;
string mPath;
if (upimg.FileName != "")
{
imgPath = upimg.FileName;
imgType = imgPath.Substring(imgPath.LastIndexOf(".") + 1);
if (imgType == "jpg" || imgType == "jpeg" || imgType == "gif")
{
string now = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + DateTime.Now.Millisecond.ToString();
string newname = now + upimg.ContentLength.ToString() + "." + imgType;
newfilename = newname;
//建立虚拟路径
mPath = Server.MapPath("clubimg");
//保存文件
upimg.SaveAs(mPath + "\\" + newname);
//原始图片名称
#region 存图
string originalFilename = mPath + "\\" + newname;
//生成的高质量图片名称
string strGoodFile = mPath + "\\" + newname;
//生成的低质量图片名称
//string strBadFile = mPath + "\\" + newname;
//缩小的倍数
int iScale = 1;
//从文件取得图片对象
Image image = Image.FromFile(originalFilename);
//取得图片大小
//Size size = new Size(image.Width/iScale, image.Height/iScale);
int hi =0;
int wi =0;
if(image.Width>300)
{
wi=300;
}
else
{

}
if(image.Height>300)
{
hi=300;
}
else
{

}
Size size = new Size(wi,hi);
//新建一个bmp图片
Image bitmap = new Bitmap(size.Width, size.Height);
//新建一个画板
Graphics g = Graphics.FromImage(bitmap);
//设置高质量插值法
g.InterpolationMode = InterpolationMode.High;
//设置高质量,低速度呈现平滑程度
g.SmoothingMode = SmoothingMode.HighQuality;
//清空一下画布
g.Clear(Color.Blue);
//在指定位置画图
g.DrawImage(image, new Rectangle(0, 0, bitmap.Width, bitmap.Height), new Rectangle(0, 0, image.Width, image.Height), GraphicsUnit.Pixel);
//保存高清晰度的缩略图
//水印字 14:131,37; 10:90,34; 8:74,12
int fontsize = 10;
int mygx = 10;
int mygy = 20;
if (image.Width > 160)
{
fontsize = 14;
mygx = (image.Width - 160)/2;
}
if (image.Width > 121 && image.Width < 161)
{
fontsize = 10;
mygx = (image.Width - 121)/2;
}
if (image.Width < 122)
{
fontsize = 8;
if (image.Width > 74)
{
mygx = (image.Width - 74)/2;
}
else
{
mygx = 1;
}

}
if (image.Height > 37)
{
mygy = image.Height - 60;
}
else
{
mygy = 10;
}

Font f = new Font("楷体", fontsize);
Brush b = new SolidBrush(Color.FromArgb(150, 1, 1, 1));
Brush b1 = new SolidBrush(Color.FromArgb(150, 250, 250, 250));

g.DrawString("www.532ad.com", f, b, mygx, mygy + 20);
g.DrawString("www.532ad.com", f, b1, mygx, mygy + 21);


//Font f = new Font("宋体", fontsize);
//Brush b = new SolidBrush(Color.FromArgb( 150, 50, 50, 50 ));
//string addText ="青岛分类广告网 http://www.532ad.com";
//Font f1 = new Font("Impact", 14);
//Brush b1 = new SolidBrush(Color.FromArgb( 250, 50, 50, 50 ));
//string addText1 ="http://www.532ad.com";
image.Dispose();
g.Dispose();
//g.DrawString(addText, f, b, 10, 10);
if (imgType == "jpg" || imgType == "jpeg")
bitmap.Save(strGoodFile, ImageFormat.Jpeg);
if (imgType == "gif")
bitmap.Save(strGoodFile, ImageFormat.Gif);


newfilename = newname;
//取得原图像的普通缩略图
//System.Drawing.Image img = image.GetThumbnailImage(image.Width/iScale, image.Height/iScale, null, IntPtr.Zero);
//保存普通缩略图
//if (imgType == "jpg" || imgType == "jpeg")
//img.Save(strBadFile, System.Drawing.Imaging.ImageFormat.Jpeg);
//if (imgType == "gif")
//img.Save(strBadFile, System.Drawing.Imaging.ImageFormat.Gif);
//img.Dispose();
//}
/*if (imgType == "gif")
{
/*string now = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + DateTime.Now.Millisecond.ToString();
string newname = now + upimg.ContentLength.ToString() + "." + imgType;*/
/*newfilename = newname;
//建立虚拟路径
mPath = Server.MapPath("../infoimg");
//保存文件
upimg.SaveAs(mPath + "\\" + newname);
}*/
#endregion
}
}
myfilename[mynum] = newfilename;

}
return myfilename;

}


public string[] myupimgfile3()
{

string[] myfilename = new string[3];
HttpFileCollection _files = HttpContext.Current.Request.Files;
for (int mynum = 0; mynum < _files.Count; mynum++)
{
string newfilename = "";
HttpPostedFile upimg = _files[mynum];

string imgPath, imgType;
string mPath;
if (upimg.FileName != "")
{
imgPath = upimg.FileName;
imgType = imgPath.Substring(imgPath.LastIndexOf(".") + 1);
if (imgType == "jpg" || imgType == "jpeg" || imgType == "gif")
{
string now = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + DateTime.Now.Millisecond.ToString();
string newname = now + upimg.ContentLength.ToString() + "." + imgType;
newfilename = newname;
//建立虚拟路径
mPath = Server.MapPath("../adimg");
//保存文件
upimg.SaveAs(mPath + "\\" + newname);
//原始图片名称
}
}
myfilename[mynum] = newfilename;

}
return myfilename;

}

public bool deleteimg(int empid, string senderid)
{
bool deletebool = true;
try
{
DataBase db = new DataBase();
string[] myimgname = new string[3];
db.Open();
db.comm = new SqlCommand("select id,senderid,imgname,imgname1,imgname2 from info where senderid = '" + senderid + "'and id = " + empid, db.conn);
db.dr = db.comm.ExecuteReader();
if (db.dr.Read())
{
myimgname[0] = db.dr["imgname"].ToString();
myimgname[1] = db.dr["imgname1"].ToString();
myimgname[2] = db.dr["imgname2"].ToString();
}
db.dr.Close();
db.comm.Dispose();
db.conn.Close();


for (int i = 0; i < 3; i++)
{
if (myimgname[i] != "" && File.Exists(Server.MapPath("../infoimg/" + myimgname[i])) == true)
{
File.Delete(Server.MapPath("../infoimg/" + myimgname[i]));
}
}
}
catch
{
deletebool = false;
}

return deletebool;
}


public bool deleteimg(int empid)
{
bool deletebool = true;
try
{
DataBase db = new DataBase();
string[] myimgname = new string[1];
db.Open();
db.comm = new SqlCommand("select * from movement where id = " + empid, db.conn);
db.dr = db.comm.ExecuteReader();
if (db.dr.Read())
{
myimgname[0] = db.dr["imgname"].ToString();
}
db.dr.Close();
db.comm.Dispose();
db.conn.Close();


for (int i = 0; i < 1; i++)
{
if (myimgname[i] != "" && File.Exists(Server.MapPath("../infoimg/" + myimgname[i])) == true)
{
File.Delete(Server.MapPath("../infoimg/" + myimgname[i]));
}
}
}
catch
{

deletebool = false;
}

return deletebool;
}

}

}

风格的

string extension = Path.GetExtension(UploadFile.PostedFile.FileName).ToUpper();
string fileName = DateTime.Now.ToString("yyyyMMddhhmmss");
string path = Server.MapPath(".") + "/upfile/" + fileName + extension;
UploadFile.PostedFile.SaveAs(path);

// UploadFile.Dispose();

//加文字水印,注意,这里的代码和以下加图片水印的代码不能共存
System.Drawing.Image image = System.Drawing.Image.FromFile(path);
Graphics g = Graphics.FromImage(image);
g.DrawImage(image, 0, 0, image.Width, image.Height);
Font f = new Font("Verdana", 32);
Brush b = new SolidBrush(Color.Red);
string addText = "ty158.com";

g.DrawString(addText, f, b, 10, 10);

image.Save("c://gugug.jpg");
image.Dispose();
g.Dispose();

分享到:
评论

相关推荐

    上传文件代码源码 网页上传源码

    本资源提供的"上传文件代码源码"是实现这一功能的具体实现,适用于开发者学习和应用。下面将详细解释相关知识点。 1. **前端文件选择与预览** 在网页上,文件上传通常通过HTML5的`&lt;input type="file"&gt;`标签实现。...

    java图形化实现文件上传_javagui上传文件,gui编写上传下载文件功能-Java文档类资源

    (3)单击“上传客服端”窗口中的“测试”按钮,如果弹出“连接成功”界面,那就说明你可以上传文件了。 (4)单击“上传客服端”窗口中的“浏览”按钮,选择你要上传的文件。 (5)单击“上传客服端”窗口中的...

    nginx上传文件大小报错500的解决办法

    nginx上传文件大小报错500的解决办法 采用nginx作反向代理,出现了一个诡异的问题,小文件可以提交,大文件会报500内部错误。这个是什么原因导致的呢?  查wiki可知,上传文件大小相关的有三个配置 client_body_...

    上传文件至数据库并下载

    上传文件时,通常会在界面上设置是否仅支持单文件上传,或者允许多文件上传。如果限制为单文件上传,可以在属性中勾选这一选项,并通过配置来指定允许的文件类型。对于多文件上传,就不需要勾选单文件上传,并可上传...

    PHP实现通过CURL上传文件功能示例

    本文实例讲述了PHP实现通过CURL上传文件功能。分享给大家供大家参考,具体如下: PHP使用CURL上传文件只需发送一个POST请求就可以了,在请求中设置某个字段为需要上传的文件全路径,并且以”@”开头,然后使用CURL把...

    C# WebClient 上传文件

    ### C# WebClient 上传文件知识点解析 #### 一、引言 在开发过程中,经常会遇到需要将客户端的文件上传到服务器的需求。C#语言提供了多种方法来实现这一功能,其中`WebClient`类就是一种非常简便的方式。本文将详细...

    delphi上传文件到php网站

    2. **移动上传文件:** 使用`move_uploaded_file()`函数将临时文件移动到服务器上的目标位置。确保指定的目录有写入权限。 3. **处理文件:** 文件上传成功后,你可以根据业务需求对文件进行进一步处理,如保存...

    C#通过winform和http上传文件

    - 设置请求方法为POST,并设置Content-Type头为"multipart/form-data",这是HTTP上传文件的标准格式。 - 使用FileStream读取选定的文件内容,然后写入到HttpWebRequest的GetRequestStream中。 4. 发送请求并处理...

    jsp自行增加上传文件的批量文件上传

    本想做个批量文件上传的功能(设想是客户选择一个目录后,程序能判断需要上传的文件上传到服务器指定目录下),结果没有做出来,在网上找了许多版本的批量上传程序,但实验效果不好,有的还需要下载分,上传文件也不能...

    delphi +aps idhttp上传文件

    - 然后,创建一个TIdMultiPartFormDataStream对象,这是用来存储待上传文件的地方。你可以添加文件到这个流中,指定文件名和内容。 - 调用IDHTTP的Post方法,传入服务器的URL和TIdMultiPartFormDataStream对象作为...

    WinForm上传文件到服务器

    ### WinForm上传文件到服务器 #### 知识点概述 在.NET Framework中,Windows Forms(简称WinForms)是一种用于创建Windows桌面应用程序的技术。本篇内容介绍如何使用WinForm实现文件的上传功能,即将本地文件传输...

    java 上传文件,实时获取上传进度.

    - 文件大小限制:为了避免过大文件导致服务器资源耗尽,应设置上传文件大小的最大限制。 - 文件类型检查:确保上传的文件类型符合预期,防止恶意文件上传。 - 文件重命名:上传后的文件应进行重命名,防止路径...

    asp.net 批量上传文件

    对于文件上传,我们可能需要配置`&lt;httpRuntime&gt;`节,调整如`maxRequestLength`(限制上传文件的大小)和`executionTimeout`(请求超时时间)等参数,以确保大文件或长时间上传的稳定性。 在`jqueryForm.aspx.cs`...

    winform上传文件到共享文件夹

    在Windows Forms(Winform)应用开发中,上传文件到共享文件夹是一项常见的需求,尤其在企业内部通信或者数据传输场景中。本项目是基于VS2010环境,结合了多位专家的经验,实现了一个功能,使得用户能够方便地将本地...

    ExtJS验证上传文件类型

    ExtJS 验证上传文件类型 ExtJS 中实现文件上传功能是非常方便的,但对于新手来说,控制文件上传类型是一个难题。例如,我们只想让用户上传特定的文件类型,例如txt文件,那么如何实现当用户上传非txt文件时,给出...

    C#.Net上传文件大小限制设置

    C#.Net上传文件大小限制设置 在C#.Net中,我们通常遇到上传文件大小限制的问题,即默认情况下,上传文件大小不能超过4M,否则将无法显示页面。这是因为IIS6.0中asp请求的最大字节数默认为200K。为了解决这个问题,...

    批量上传文件带进度条

    在IT行业中,批量上传文件是一项常见的任务,尤其是在大数据传输或者文件管理系统中。为了提供良好的用户体验,通常会结合进度条功能,让用户能够实时了解文件上传的状态。在这个场景下,"批量上传文件带进度条"主要...

    Java多线程设计模式上传文件

    Java多线程设计模式上传文件Java多线程设计模式上传文件Java多线程设计模式上传文件Java多线程设计模式上传文件Java多线程设计模式上传文件Java多线程设计模式上传文件Java多线程设计模式上传文件Java多线程设计模式...

    C# winform 上传文件 (多种方案)

    C# Winform 上传文件多种方案 C# Winform 上传文件是指在 Windows 窗体应用程序中上传文件到服务器的操作。这里总结了多种实现上传文件的方案。 方案一:使用 WebClient 上传文件 WebClient 是 .NET Framework 中...

    Delphi WebBroker 网页上传文件的 Demo 源码

    - **大小限制**:设置上传文件的大小限制,避免服务器资源被大量大文件消耗。 - **安全性检查**:对上传的文件名进行安全处理,防止路径遍历攻击等安全问题。 - **错误处理**:提供详细的错误信息,帮助用户理解为...

Global site tag (gtag.js) - Google Analytics