- 浏览: 191646 次
- 性别:
- 来自: 广州
文章分类
最新评论
模板页代码:
后台代码:
参考:https://www.cnblogs.com/sharealex/articles/8086595.html
原博客中还有删除及查看的方法,可自己学习
@{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width" /> <title>上传图片</title> </head> <body> <div> <div class="leftImage"> <input type="file" id="picAjax" class="customButton" /> <span id="uploadInfo"></span> <input type="button" id="submitPic" class="customButton" value="上传" /> </div> <div class="rightImage"> <img id="selImg" src="" alt="" /> </div> </div> <script type="text/javascript" src="~/Scripts/jquery-1.10.2.min.js"></script> <script type="text/javascript"> //选择图片事件 var picString = ""; var id = 11; $("#picAjax").change(function (e) { var file = e.delegateTarget.files[0]; if (file.type == 'image/jpeg' || file.type == 'image/png') { $("#uploadInfo").text("图片格式正确,请点击提交按钮"); var reader = new FileReader(); reader.readAsDataURL(file); reader.onload = function (ret) { picString = reader.result; //预览图片 $("#selImg").attr({ "src": picString }); } } else { $("#uploadInfo").text("请上传jpg或png格式的图片!"); } }); //上传图片事件 $("#submitPic").click(function () { if (picString != "") { $.ajax("../BasicData/UploadPhoto", { type: "post", datatype: "json", data: { picString:picString, id:id }, error: function () { }, success: function (result) { if (result.suc == true) { $("#uploadInfo").text("图片上传成功!"); $("#ImageList").empty(); ReadPicture(); } } }); } }); </script> </body> </html>
后台代码:
#region 模板页视图 public ActionResult UploadPhoto() { return View(); } #endregion #region 接收上传图片 [HttpPost] public ActionResult UploadPhoto(string picString, string id) { var tmpArr = picString.Split(','); byte[] bytes = Convert.FromBase64String(tmpArr[1]); MemoryStream ms = new MemoryStream(bytes); ms.Write(bytes, 0, bytes.Length); var img = Image.FromStream(ms, true); var path = System.AppDomain.CurrentDomain.BaseDirectory; var imagesPath = System.IO.Path.Combine(path, @"Uploads\AgrCorporations\" + id + "\\"); if (!System.IO.Directory.Exists(imagesPath)) System.IO.Directory.CreateDirectory(imagesPath); string fileName = DateTime.Now.ToString("yyyyMMddHHmmss_ffff", System.Globalization.DateTimeFormatInfo.InvariantInfo) + ".png"; var bitImage = GetThumbnailImage(img, 400, 300); bitImage.Save(imagesPath + fileName); bool isOk = true; string msg = imagesPath + fileName; return Json(new { suc = isOk, msg = msg }); } #endregion #region 图片压缩方法 /// <summary> /// 图片压缩方法 /// </summary> /// <param name="srcImage">Image图片</param> /// <param name="width">要压缩的图片宽</param> /// <param name="height">要压缩的图片高</param> /// <returns></returns> private static Image GetThumbnailImage(Image srcImage, int width, int height) { Image bitmap = new Bitmap(width, height); Graphics g = Graphics.FromImage(bitmap); //设置高质量插值法 g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High; g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighSpeed; //在指定位置并且按指定大小绘制原图片的指定部分 g.DrawImage(srcImage, new Rectangle(0, 0, width, width), new Rectangle(0, 0, srcImage.Width, srcImage.Height), GraphicsUnit.Pixel); return bitmap; } #endregion
参考:https://www.cnblogs.com/sharealex/articles/8086595.html
原博客中还有删除及查看的方法,可自己学习
发表评论
-
excel文件转为DataTable
2018-11-02 17:38 1603在人员初始化的时候,通常会用到excel编辑好,导入到数据库中 ... -
DataTable导出excel
2018-11-02 16:36 1159网上有很多关于导出的例子,这里讲一个利用NPOI导出excel ... -
EF重新封装查询
2018-10-22 17:49 1068今天搜索批量删除时,无意间翻到这篇文章感觉思路不错mark一下 ... -
EF中批量操作
2018-10-22 15:54 940在正常的使用过程中,如果要批量删除,需要先搜索符合条件的结果集 ... -
MVC学习之七_____上传多张图片
2018-09-19 15:55 1204图片上传控件:WebUploader 后台代码: pu ... -
MVC学习之五_____删除记录
2018-08-30 12:08 315前端模板页,沿用list的模板代码即可 后台代码: pu ... -
MVC学习之四_____新增记录
2018-08-30 11:22 332AddInfo模板代码: @{ //Layo ... -
MVC学习之二_____查看详情信息
2018-08-29 11:50 548查看页和编辑页的模板页类似 @model BasicDat ... -
MVC学习之三_____跳转到编辑页提交信息
2018-08-29 11:31 500模板页代码 @model PagedList<App ... -
MVC学习之一_____实现列表及分页
2018-08-29 11:05 1022模板页代码: @model PagedList<Ap ... -
一个点击事件,action执行两次
2018-08-04 17:38 786记一次低级的错误 点击后要跳转到查看详情页面,代码如下: @ ... -
App_Data中数据库文件的连接配置
2018-08-04 17:03 516由于使用了EntityFramework和POCO,所以nam ... -
EntityFramework Reverse POCO Code First Generator反向生成代码
2018-07-26 15:05 1259上一篇转载了依据Code First生成对应数据库的方法 那么 ... -
使用CodeFirst把类生成数据库【转】
2018-07-26 12:30 537推荐以下文章,他比较系统的讲解了由实体类生成数据库的方法 h ... -
源于nopcommerce的WebApi认证机制
2017-06-22 15:31 517写在前面: 该机制的目的在于验证请求的合法性并对每次请求的数据 ... -
利用动软代码生成器批量生成MVC4框架中的models类
2015-09-19 20:17 9121、下载动软代码生成器v2.78或更高版本 2、添加数据库连接 ... -
MVC4 官方入门教程(适合初学者)【转】
2015-06-06 11:21 954本教程所有文章导航 ...
相关推荐
本DEMO主要展示了如何实现单张或多张图片文件的上传功能。以下将详细讲解涉及的知识点。 1. **文件I/O操作**:在Java中,进行文件上传首先需要处理的是本地文件的读取。`java.io.File`类用于表示文件对象,可以获取...
在.NET框架中,图片批量上传是一项常见的功能,尤其在开发Web应用或云存储服务时,用户可能需要一次性上传多张图片。本篇文章将详细介绍如何利用.NET技术实现这一功能,包括必要的概念、步骤以及可能遇到的问题。 ...
在IT行业中,批量上传图片是一项常见的功能需求,尤其是在Web应用中。...通过"JQueryUploadDemo"这样的示例项目,开发者可以更直观地学习这些技术的结合使用,从而在实际项目中实现高效、友好的批量图片上传功能。
基于SpringBoot的文件上传系统,前后端分离,单文件上传,多文件上传,大文件上传,断点续传,文件秒传,图片上传 项目经过严格测试,确保可以运行! 采用前后端分离的方式进行开发,实现了几种常用的文件上传功能...
本文将详细介绍如何使用jQuery库结合Java后端实现单张或多张图片的上传功能。首先,我们需要理解jQuery的核心特性,它是一种轻量级的JavaScript库,提供了丰富的DOM操作、事件处理、动画效果等功能,极大地简化了...
批量上传是指用户可以一次性选择多张图片进行上传,而不是一张一张地单独操作。这通常通过HTML5的File API实现,允许用户选择多个文件,然后通过Ajax异步上传到服务器。在Java后端,可以使用Spring MVC或Struts2等...
这个功能允许用户在不刷新整个页面的情况下,上传多张图片,提升用户体验。 批处理在ASP.NET中指的是处理多个请求或操作作为单个单元的能力,这在处理大量数据或执行复杂操作时特别有用,如批量上传文件。在图片...
5. 结果展示:检测结果会在前端以用户友好的方式呈现,可能是以列表、图表或其他可视化形式显示,告知用户每张图片或每个视频帧的病害类型和概率。 6. 操作手册:附赠的操作手册应该详细介绍了如何使用这个系统,...
5. 分享与下载:用户可以生成分享链接,将相册或单张图片分享给他人,也可能提供图片下载功能。 6. 搜索与过滤:根据关键词、时间、标签等条件搜索图片。 7. 评论与点赞:社交互动功能,增加用户参与度和社区氛围。 ...
这个功能在许多社交媒体应用中都非常常见,让用户能够方便地从手机相册中选取多张图片进行上传或分享。下面将详细介绍这个项目及其相关知识点。 1. **安卓开发基础**: - **Activity**:作为安卓应用的基本单元,...
3. **图片下载**:用户可以选择下载相册中的单张或多张图片,系统会处理下载请求,确保文件传输的正确性。 4. **分类管理**:用户可以创建多个相册,将图片按照主题或时间进行分类,这涉及到数据库中的表设计和关联...
1. `ViewImage.aspx`: 这个页面可能用于查看单张图片,用户可以通过它浏览相册中的图片。 2. `Default.aspx` 和 `main.aspx`: 这些通常是应用的主页或主界面,用户登录后可能会看到他们的相册列表或其他重要信息。 ...
在讯友网络相册项目中,JSP页面可能用于展示用户的照片列表,提供上传照片的表单,以及显示单张照片的详细信息。 3. MVC设计模式:Model-View-Controller(模型-视图-控制器)是Java Web开发中常见的架构模式。模型...
它采用MVC(Model-View-Controller)架构模式,通过AOP(面向切面编程)和Ioc(依赖注入)来简化开发流程。JFinal的控制器(Controller)类继承自`com.jfinal.core.Controller`,模型(Model)通常对应数据库表,视图...
5. 分享功能:用户可以将相册或单张照片分享给其他用户或社交媒体。 6. 权限控制:设置照片或相册的可见性,如公开、仅自己可见、指定好友可见等。 7. 搜索与筛选:通过关键字、标签或时间线对照片进行搜索和筛选。 ...
全屏操作层意味着用户在查看图片时可以有更大的视野,而浏览功能则允许用户方便地查看搜索结果中的多张图片,可能包括上一张/下一张导航、缩放等交互设计。 对于Java开发者来说,此项目将涵盖以下知识点: 1. **...
PHP(Hypertext Preprocessor)是一种广泛应用于网页服务器端的脚本语言,尤其在Web...同时,理解并掌握这些基础知识点,将为进阶的Web开发技能,如MVC架构、RESTful API设计、单元测试、安全实践等打下坚实的基础。
例如,`PhotosController`可能会有`Index`方法来展示所有照片,以及`Details`方法来显示单张照片的详细信息。 3. **Views** - 视图是用户看到的界面,由Razor语法编写。它们通常与控制器的方法关联,根据控制器传递...
Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥...
� MVC 和 Web APP 架构 Android Android Android Android 开发背景 � 计算技术、无线接入技术的发展,使嵌入式系统逐渐有能力对桌面系统常规业务进行支持。 � 谷歌长期以来奉行的移动发展战略:通过与全球各地的...