asp.net实现上传指定格式为.rar .zip.pdf.txt.doc.ppt.excel至少这7种格式

要以二进制流的形式保存到数据库,并能够实现从数据库中读取出来进而实现下载,要有详细的代码,不管是不是网上粘贴的,只要符合我的要求,看的满意我就会重赏。还有能不能实现预览,因为上传的文件要经过管理员的审核才能下载!

1、上传什么文件都可以,关键是空间商让不让你传这些格式的文件。
2、判断文件格式,可以百度一下“C# 文件类型判断”,这是服务器安全的问题必须要注意的。
3、上传时,文件重命名(不重命名的话文件将被无提示的覆盖,建议年月日时分秒毫秒的形式为文件前缀,这样就不会有重复了),把文件路径和文件名写入数据库即可,至少神马上传机制、写入流程这些东东你不用管,电脑会自动完成。
4、在网站上给出文件链接即可,这样用户就可以下载了,至少用户选择IE的另存为还是迅雷等方式,由用户自己去选择。
希望给你一些思路,能帮到你。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-04-05
预览这个你可以重新写一个页面
我这个是用三层做的,我只给你一个用二进制流存照片例子、我这个代码太多
model层

//照片,二进制数组来操作
public byte[] Photo { get; set; }

DAL层
//这里执行插入数据库的SQL语句
public void Insert(Employee employee)
{
SqlHelper.ExecuteNonQuery("insert into tbl_Employee(Photo)values (@Photo)",
new SqlParameter("@Photo", SqlHelper.GoToDBNull(employee.Photo))
);
}

SQLHELPER是我自己写的一个类,我把这个ExecuteNonQuery的方法粘给你
public static int ExecuteNonQuery(string sql,params SqlParameter[] parameter)
{
using (SqlConnection conn= new SqlConnection(connStr))
{
conn.Open();
using (SqlCommand cmd= conn.CreateCommand())
{
cmd.CommandText = sql;
cmd.Parameters.AddRange(parameter);
return cmd.ExecuteNonQuery();
//ExecuteNonQuery对连接执行SQL语句并返回受影响行数
}
}
}

UI层
这个是一个上传照片的按钮,上传了就当做二进制流读进来
OpenFileDialog ofdPhot = new OpenFileDialog();
ofdPhot.Filter = "JPG|*.jpg|ico|*.ico";//你可以在这个地方增加你的那些所有的文件格式
if (ofdPhot.ShowDialog()==true)
{
Employee employee = (Employee)gridEmployee.DataContext;//这儿你可以不用写
//这里开始读照片

string filename = ofdPhot.FileName;
employee.Photo = File.ReadAllBytes(filename);//读取文件的二进制数据
imgPhoto.Source = new BitmapImage(new Uri(filename));
}

这个是一个确定的按钮、调用上面的insert方法

Employee employee = (Employee)gridEmployee.DataContext;//整个页面我用了数据上下文,就是DataContext,这个比较快一点,你可以用一个控件给他src赋值为上面的上传的文件
new EmployeeDAL().Insert(employee);//这里执行插入数据库的语句

现在不流行用二进制流存照片还是存其他的文件,数据库负担太重了。都是在项目下面搞一个文件夹、上传的文件放在里面,在数据库里面存他的路径,读的时候根据路径从那儿读就可以了追问

我要是把以上几种类型的文件以二进制流存在数据库,怎么实现从数据库中读取数据并下载的功能,因为文件有各种类型的,不知道怎么还原那些不同格式的文件。

第2个回答  2013-04-07
b/s结构的,只能判断文件后缀名了,winform的可以在按钮事件里面判断!
Filter = "JPG|*.jpg|ico|*.ico";
第3个回答  2013-04-07
建议你参考下PageOffice吧

...zip.pdf.txt.doc.ppt.excel至少这7种格式
1、上传什么文件都可以,关键是空间商让不让你传这些格式的文件。2、判断文件格式,可以百度一下“C# 文件类型判断”,这是服务器安全的问题必须要注意的。3、上传时,文件重命名(不重命名的话文件将被无提示的覆盖,建议年月日时分秒毫秒的形式为文件前缀,这样就不会有重复了),把文件路径和文件...

文件批量处理百宝箱的各功能用法简介
(2)有1000个txt文件,需要将每个txt文件中的第3行删除,则批替换的通配符组合规则为,在查找框中输入:(*^p*^p)*^p,【解释:小括号的每个^p代表一段,第一个^p对应第一段,依次类推】在替换框中输入:\\1,【解释:\\1代表上面第一对小括号的内容,依次类推,后面*^p未出现,其代表的第三段被删除了】,先取消...

文件受版权保护或被加密 无法转换WMV格式
点击下载:http:\/\/netroom.hbu.edu.cn\/personal\/crackmore\/crsoft\/cr-wma.zip另一个软件(看了就会用)点击下载:http:\/\/netroom.hbu.edu.cn\/personal\/crackmore\/crsoft\/cr-wma2.zip如果还不行,请看下面:**最近看到的方法,安装media player 7 或更低版本即可观看,大家可以试试看。事实上"每个系统"中都有隐藏...

docx是什么格式?
1、docx是Word2007以上版本的文件格式,由于格式有差别,docx格式的Word文件低于2007版就打不开了。如果考虑2003前的版本,就保存成doc格式,这样到了其它的机器(也许可能会是2003)上能打开。但要想在Word2003中打开docx文件,就必须得安装一个官方“office docx”补丁,以便让office2003支持docx格式文件。

当OneNote来敲门你开不开
6)支持各类文件格式,比如图片,视频,音频,涂写,各种Office文档,压缩包,PDF.你可以在OneNote里直接播放视频和音频,可以在OneNote中预览Office文档的内容并编辑,是不是很给力?当然,有一点它还不支持,不能在OneNote中查看GIF动态图片. 7)没有保存按钮,只要你的电脑联网,它可以随时保存你的笔记.妈妈再也不用担心我的...

C#相关框架有哪些?
一个.NET的对象映射工具。主要用于领域对象与DTO之间的转换、数据库查询结果映射至实体对象。24、7-Zip 一款号称有着现今最高压缩比的压缩软件,它不仅支持独有的 7z 文件格式,而且还支持各种其它压缩文件格式,其中包括 ZIP, RAR, CAB, GZIP, BZIP2和 TAR 等等。此软件压缩的压缩比要比普通 ZIP ...

C#,ASP.net中的List集合怎么导出到Excel表或txt文本呢?
ASP.NET导出成EXCEL的方法很多,只需要调用EXCEL的程序接口即可,前提是运行你网站的这台电脑上安装了 EXCEL软件(至少为2003版本),不过对于服务器来说,EXCEL是一个相当累赘的东西,建议你还是去搜索下 LIST 转 CSV 的方法,CSV格式不需要任何EXCEL的接口,输出的文件既可以被EXCEL打开,也可以使用TXT...

怎样才能把电脑上的电子表格传到苹果手机里面,详细点最好是一步一步告...
请再目录下新建一个文件夹,把目录改 为:\/Library\/WebServer\/Documents\/word 修改755权限,在safari里输入127.0.0.1\/word\/就可以读DOC ,PDF,TXT等格式的文件。2、方法二:安装lighttpd 方法同上。PDF请在installer里安装PDFviewer,然后把PDF文件上传至PDFviewer提示的文件夹即可。

老师需要什么样的教学神器
4.2、支持将转换PDF转换成word,PPT的功能,在工作中word,excel转PDF大家都知道方法,那PDF转word,转excel是不是难倒部分人了,CS扫描王就支持PDF转Word,表格,PPT的功能。4.3、扫描识别图中文字,保存为你想要的格式;看到书中或者图片的文字内容,想要搬运到word中编辑,不需要一字字敲打,只需拍照即可识别。5、坚果云:...

常用的培训员工有哪几种形式?各个形式都有哪些特点?
(7)互动小组法:也称敏感训练法。此法主要适用于管理人员的人际关系与沟通训练。让学员在培训活动中的亲身体验来提高他们处理人际关系的能力。其优点是可明显提高人际关系与沟通的能力,但其效果在很大程度上依赖于培训教师的水平。(8)网络培训法:是一种新型的计算机网络信息培训方式,投入较大。但由于...

相似回答