问题 1。
给你一个例程
可上传文件和图片
功能很强大哦。
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Drawing" %>
<%@ Import Namespace="System.Drawing.Imaging" %>
<html>
<script language="C#" runat=server>
void UploadBtn_Click(Object sender, EventArgs e) {
UploadFile.PostedFile.SaveAs(Server.MapPath("chunfeng.jpg"));
ImageEditor.Visible = true;
}
void UpdateBtn_Click(Object sender, EventArgs e) {
System.Drawing.Image image = System.Drawing.Image.FromFile(Server.MapPath("chunfeng.jpg"));
System.Drawing.Image newimage = new Bitmap(image.Width, image.Height, PixelFormat.Format32bppRGB);
Graphics g = Graphics.FromImage(newimage);
g.DrawImage(image,0,0,image.Width,image.Height);
Font f = new Font("Lucida Sans Unicode", Int32.Parse(FontSize.SelectedItem.Text));
Brush b = new SolidBrush(Color.Red);
g.DrawString(Caption.Text, f, b, 10, 140);
g.Dispose();
System.Drawing.Image thumbImage = newimage.GetThumbnailImage(Int32.Parse(Width.Text),Int32.Parse
(Height.Text),null,0);
image.Dispose();
thumbImage.Save(Server.MapPath("chunfeng.jpg"), ImageFormat.JPEG);
}
</script>
<body>
<form enctype="multipart/form-data" runat=server>
<h3>
请选择上传文件: <input id="UploadFile" type=file runat=server>
<asp:button Text="上传文件" OnClick="UploadBtn_Click" runat=server/>
<hr>
<asp
anel id="ImageEditor" Visible=false runat=server>
<img src="chunfeng.jpg">
<h3>
图像宽度: <asp:textbox id="Width" runat=server/>
图像高度: <asp:textbox id="Height" runat=server/> <br>
文本标题: <asp:textbox id="Caption" runat=server/>
标题尺寸: <asp:dropdownlist id="FontSize" runat=server>
<asp:listitem>14</asp:listitem>
<asp:listitem>18</asp:listitem>
<asp:listitem>26</asp:listitem>
<asp:listitem>36</asp:listitem>
<asp:listitem>48</asp:listitem>
<asp:listitem>62</asp:listitem>
</asp:dropdownlist>
<asp:button Text="上传图片" OnClick="UpdateBtn_Click" runat=server/>
</h3>
</asp
anel>
</form>
</body>
</html
(不是我写的
)
问题 2
给你一个思路
上传时你可以将文件的名称和字节数存入数据表,而后每次上传时先比较库中是否有
相同的文件名和字节数的记录,若有则说明已存在,否则......
这是个笨笨却好用方法
,重复上传的几率也很小。