`

.net文件上传的各种操作及创建文件夹和删除上传的文件方法

 
阅读更多

aspx中
<tr>
<td align="left" colspan="2" style="height: 27px">
<input id="myFile" name="myFile" style="width:441px; height:23px;" type="file" runat="server"/>
<asp:Button ID="btnupload" runat="server" Text="上传" OnClick="upload_Click" Height="23px" Width="57px"/>
</td>
</tr>
<tr>
<td style="width: 250px; height: 21px; text-align: left" rowspan="4">
<asp:GridView ID="GridView1" runat="server" DataKeyNames="id" OnRowDeleting="GridView1_RowDeleting"
Width="250px" AutoGenerateColumns="False" DataSourceID="SqlDataSource1" Font-Size="Small" ShowHeader="false">
<Columns>
<asp:BoundField DataField="id" SortExpression="id" Visible="False">
</asp:BoundField>
<asp:BoundField DataField="filename" SortExpression="filename" />
<asp:CommandField ShowDeleteButton="True" />
</Columns>
</asp:GridView>
</td>
</tr>
<tr>
<td colspan="2">
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:TocProjectConnectionString1 %>"
SelectCommand="SELECT [id],[filename] FROM [upfile] where projectid=@projectid ORDER BY [id]" DeleteCommand="DELETE FROM upfile WHERE (id = @id)" >
<DeleteParameters>
<asp:ControlParameter ControlID="GridView1" Name="id" PropertyName="SelectedValue"/>
</DeleteParameters>
<SelectParameters>
<asp:ControlParameter ControlID="TextBox1" Name="projectid" PropertyName="Text" />
</SelectParameters>
</asp:SqlDataSource>
</td>
</tr>
aspx.cs中
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//带出填表人
string uid = HttpContext.Current.Session["userid"].ToString();
TextBox4.Text = uid;
GetUsername();
//带出当前年月为申请日期
TextBox3.Text = DateTime.Now.ToString("yyyyMMdd");
//当前庶务单单号--年月日加4位流水号,并自动递增
string yms0 = "", ids0 = "", yms1 = "", ids1 = "";
string kids = "";
yms1 = DateTime.Now.ToString("yyyyMMdd");
ids1 = "0001";
ProjectSer proser = new ProjectSer();
string checksql = "select top 1 projectid from projectmain order by projectid desc";
kids = proser.specfval_find(checksql, "projectid");

if (!string.IsNullOrEmpty(kids))
{
yms0 = kids.Substring(0, 8); ids0 = kids.Substring(8, 4);
}

if (yms0 == yms1)
{
int idi = Convert.ToInt32(ids0) + 1;
if (idi < 10) ids1 = "000" + idi.ToString();
if ((idi >= 10) && (idi < 100)) ids1 = "00" + idi.ToString();
if ((idi >= 100) && (idi < 1000)) ids1 = "0" + idi.ToString();
}
TextBox1.Text = yms1 + ids1;
//提交前提示附件是否上传完整
Button1.Attributes.Add("onclick", "javascript:return confirm('请确定附件上传完整! 执行点击[确定];取消操作点击[取消]')");
}
}
protected void upload_Click(object sender, EventArgs e)
{
if (myFile.PostedFile != null)
{
string filename = myFile.PostedFile.FileName;
int i = filename.LastIndexOf(".");
string newext;
if (i < 0)
{
Label3.Text = "请选择上传文件!";
}
else
{
newext = filename.Substring(i);
if (newext != ".jpg" && newext != ".gif" && newext != ".bmp" && newext != ".txt" && newext != ".doc" && newext != ".xls" && newext != ".pdf")
Label3.Text = "文件格式不对,格式只能为.jpg,.gif,.bmp,.txt,.doc,.xls,.pdf!";
else
{
string projectid = TextBox1.Text;
string path = Server.MapPath(".\\upLoadfile\\" + projectid);
//判断文件夹是否存在
//if (!Directory.Exists(path))
Directory.CreateDirectory(path);
//else
//{
// Directory.Delete(path, true);
// Directory.CreateDirectory(path);
//}

//保存上传文件
string newname = Path.GetFileName(filename);
myFile.PostedFile.SaveAs(path + "\\" + newname);

ProjectSer proser = new ProjectSer();
//判断数据库中是否已存在该上传文件
string sql = "select filename from upfile where projectid='{0}' and filename='{1}'";
sql = string.Format(sql, projectid,newname);
string name=proser.specfval_find(sql,"filename");
//将上传的文件写入数据库
if (name == "")
{
string sqlstr = "insert into upfile values('{0}','{1}')";
proser.ExecuteNonQuery(string.Format(sqlstr, projectid, newname));
gv_reflsh();
}
else
{
string sqlstr = "update upfile set filename='{0}' where projectid='{1}' and filename='{2}'";
proser.ExecuteNonQuery(string.Format(sqlstr, newname, projectid, newname));
gv_reflsh();
}
}
}
}
}
//删除附件
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
//删除服务器上的附件
ProjectSer proj = new ProjectSer();
string filename=GridView1.Rows[e.RowIndex].Cells[1].Text;
string projectid = TextBox1.Text;
string path = Server.MapPath(".\\upLoadfile\\" + projectid + "\\" + filename);
File.Delete(path);
//删除数据库中的资料
string SqlStr = "delete from upfile where id = " + GridView1.SelectedIndex;
string ConnStr = ConfigurationManager.ConnectionStrings["TocProjectConnectionString"].ConnectionString;
SqlConnection conn = new SqlConnection(ConnStr);
conn.Open();
SqlCommand comm = new SqlCommand(SqlStr, conn);
comm.ExecuteNonQuery();
gv_reflsh();
}
//GridView异动后刷新
protected void gv_reflsh()
{
string proid = TextBox1.Text;
SqlDataSource1.SelectCommand = string.Format("select id,filename from upfile where projectid='{0}' order by id",proid);
SqlDataSource1.DataSourceMode = SqlDataSourceMode.DataSet;
SqlDataSource1.Select(DataSourceSelectArguments.Empty);
}
类中
public int ExecuteNonQuery(string cmdText)
{
string connString = System.Configuration.ConfigurationManager.AppSettings["dbconnstr"];

using (OleDbConnection connection = new OleDbConnection(connString))
{
connection.Open();
OleDbCommand cmd = new OleDbCommand(cmdText, connection);
int val = cmd.ExecuteNonQuery();
connection.Close();
return val;
}

}
public string specfval_find(string sqlstr,string specf)
{
string connectionString = System.Configuration.ConfigurationManager.AppSettings["dbconnstr"];
string resultstr = "";
string queryString = "";
queryString = sqlstr;

using (OleDbConnection connection = new OleDbConnection(connectionString))
{
OleDbCommand command = new OleDbCommand(queryString, connection);
connection.Open();
OleDbDataReader Reader = command.ExecuteReader();
if (Reader.HasRows)
{
Reader.Read();
resultstr = Reader[specf].ToString();
//resultstr = Reader.GetString(0);
}

Reader.Close();
}
return resultstr;
}

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    vb.net中的FTP操作:创建、删除、查询、下载、上传案例源码

    【程序老媛出品,必属精品,亲测校正,质量保证】 资源名:vb.net中的FTP操作:创建、删除、查询、下载、上传案例源码 资源类型:程序源代码 源码说明: 适合人群:新手及有一定经验的开发人员

    ASP.NET仿百度网盘文件分享文件管理系统源码

    源码说明:创建无限级文件夹,上传文件,可进行删除,下载 分享等功能,异步上传 无限级文件夹:可在根目录中创建文件夹,点击文件夹即可进入下一级目录,可上传文件或新建目录 下载:单击列表中的文件即可下载文件 ...

    ASP.NET网盘文件分享文件管理系统源码 会员上传下载文件 带搭建教程.zip

    创建无限级文件夹,上传文件,可进行删除,下载 分享等功能,异步上传 无限级文件夹:可在根目录中创建文件夹,点击文件夹即可进入下一级目录,可上传文件或新建目录 下载:单击列表中的文件即可下载文件 分享:用户...

    .NET网络硬盘源码

    .NET网络硬盘源码,创建文件夹,删除文件夹,上传文件等

    ASP.NET文件处理如何操作

    对文件这块的处理ASP.NET可以实现对驱动器、文件、文件夹操作。 1、可以获取驱动器的信息。 2、创建复制删除移动打开文件。 3、Stream类读写。读写文本文件,读写二进制文件等。 4、利用FileUpload控件实现文件上传...

    【仿百度w盘文件管理系统】.NET高仿百度w盘文件分享带分享与会员功能

    创建无限级文件夹,上传文件,可进行删除,下载,分享等功能,异步上传。 无限级文件夹:可在根目录中创建文件夹,点击文件夹即可进入下一级目录,可上传文件或新建目录 下载:单击列表中的文件即可下载文件 分享:...

    asp.net知识库

    使用.ashx文件处理IHttpHandler实现发送文本及二进制数据的方法 制作一个简单的多页Tab功能 一完美的关于请求的目录不存在而需要url重写的解决方案! 在C#中实现MSN消息框的功能 XmlHttp实现无刷新三联动ListBox 鼠标...

    ftp 上传文件 删除文件类

    //上传文件(上传99.zip文件到a目录下) ftpClient.UploadFile(soucepath, new Uri("ftp://ip/a/"), 0, WebRequestMethods.Ftp.UploadFile); // 删除98.zip文件 string deltefile = "98.zip"; ftpClient....

    网站文件夹动态文件监控(可有效防止木马,后门程序)

    本软件会对指定文件夹指定格式的文件进行删除,修改,创建,重命名等动作的监控。需要.net2.0的runtime. 1.dirlist.txt为监控文件夹的配置文件,把要监控的文件夹地址输入,多个文件夹换行处理。 2.ext.txt 为监控...

    零基础学ASP.NET

    ASP.NET程序的创建、配置和调用 ASP.NET开发环境Visual Studio 2005介绍 常量、变量、流程控制、面向对象 页面对象:Application、Session、Cookie、Request和Response 智能表单的创建:文本、表格、图像、上传等 ...

    ASP.NET 控件的使用

    4.1 接收上传文件 122 4.1.1 把文件保存到文件系统 123 4.1.2 把文件保存到数据库 125 4.1.3 上传大文件 128 4.2 显示日历 133 4.2.1 创建弹出式日期选择器 135 4.2.2 根据数据库表呈现日历 137 4.3 显示广告 141 ...

    MF00887-ASP.NET网盘管理源码.zip

    主要功能:创建无限级文件夹,上传文件,可进行删除,下载,分享,异步上传。   多级文件夹:可在根目录中创建文件夹,点击文件夹即可进入下一级目录,可上传文件或新建目录   下载:单击列表中的文件名称即可下载...

    asp.net网站源码

    浏览文件、上传报表、创建文章、文件维护、网上交流、退出办公 等操作。 后台 general/login.aspx进入。 后台模块 网站首页 进入网站的前台首页 用户管理 用户的删除和修改操作,修改可以修改类别 系统管理 ...

    磁盘文件管理系统(asp.net)

    实现一般的文件管理,创建,编辑,移动,拷贝,删除文件等,创建文件夹,不同用户角色可以看见不同的文件格式,可以上传不同的文件类型

    ASP.NET.4揭秘

    4.1 接收上传文件135 4.1.1 把文件保存到文件系统136 4.1.2 把文件保存到数据库139 4.1.3 上传大文件142 4.2 显示日历147 4.2.1 创建弹出式日期选择器150 4.2.2 根据数据库表呈现日历152 4.3 显示广告156 4.3.1 在...

    asp.net程序开发范例宝典12

    494 12.2 对文件夹的操作 495 实例274 创建、移动和删除文件夹 495 实例275 修改文件夹名称 497 实例276 查看文件夹是否存在 498 12.3 文件上传与下载 499 实例277 单文件上传 500...

    WebFtp(Asp.Net版本的FTP)

    支持文件上传、压缩文件上传后解压,文件重命名,文本在线编辑,文件夹的创建和删除等操作。 可在Web.config 中配置FTP根目录,设置帐号、密码等。非常适合服务器程序Web程序发布、程序补丁发布。安装说明:...

    2.ASP.NET.2.0.高级编程(第4版) [1/7]

    5.18.5 修改日历的样式和操作方式 153 5.19 AdRotator服务器控件 156 5.20 Xml服务器控件 158 5.21 Panel服务器控件 158 5.22 PlaceHolder服务器控件 160 5.23 小结 161 第6章 ASP.NET 2.0的Web服务器控件 163...

    零基础学ASP.net 2.0

    本书精华 ◎ASP.NET程序的创建、配置和调用 ...◎文件和文件夹的管理 ◎数据缓存的方式和技巧 ◎ASP.NET应用程序的身份验证:Windows、Forms等 ◎Web Service的特色、创建和应用 ◎完整的在线投票系统 ◎完整的XML论坛

Global site tag (gtag.js) - Google Analytics