c# txt 文件上传、写入TXT文件、创建图形验证码
asp.net mvc 图片上传
html
在使用包含文件上传控件的表单时,必须使用 enctype="multipart/form-data" 属性
<form enctype="multipart/form-data" action="upload" method="post" >
<div>
<input type="file" name="imgFile">
<input type="submit" value="上传">
</div>
</form>
后台
public JsonResult upload(HttpPostedFileBase imgFile) { string da = DateTime.Now.ToString("yyyy-MM-ddHHmmss");
//获取虚拟路径
var fileName = Server.MapPath(@"~/assets/");
//获取文件后缀
string ExtName = Path.GetExtension(imgFile.FileName).ToLower();
//获取绝对路径
string imgPath = @"E:\img\" + da + ExtName;
FileInfo file1 = new FileInfo(imgPath);
//获取父目录路径
var di1 = file1.Directory;
//判断父目录是否存在
if (!di1.Exists)
di1.Create();
//判断文件是否存在
if (!file1.Exists)
{
//保存文件
imgFile.SaveAs(imgPath);
}
return Json("success:true");
}
js上传
$('#file_upload').click(function () {
var imgFile = new FormData();
var files = $('#file')[0].files;
if (files) {
imgFile.append('imgFile', files[0]);
}
$.ajax({
cache: false,
type: 'post',
dataType: 'json',
url: 'upload',
data: imgFile,
contentType: false,
processData: false,
success: function (data) {
alert(1);
}
});
});
写入txt
public void WLog()
{
string da = DateTime.Now.ToString("yy-MM-dd");
//获取虚拟路径
var fileName = Server.MapPath(@"~/assets/");
//获取绝对路径
string absolute_path = @"E:\";
//拼接文件路径
string path = fileName + "log/" + da + ".txt";
//创建对文件的引用
FileInfo file = new FileInfo(path);
//获取父目录路径
var di = file.Directory;
//判断父目录是否存在
if (!di.Exists)
di.Create();
//判断文件是否存在
if (!file.Exists)
{
//创建文件 并释放文件资源
FileStream fs = file.Create();
fs.Close();
fs.Dispose();
}
//写入流、释放资源
StreamWriter sw = file.AppendText();
//追加数据;
sw.Write(" 修改时间:" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + ",删除号: 1111,被修改的账户:222,登录名:3333,账号所登录的IP:1232546\r\n");
sw.Close();
sw.Dispose(); }
创建图形验证码
/// <summary>
/// 创建图形验证码
/// </summary>
/// <param name="validateNum">验证码长度</param>
private void CreateImage(string validateNum)
{
if (validateNum == null || validateNum.Trim() == string.Empty)
return;
//生成BitMap图像
Bitmap image = new Bitmap(validateNum.Length * + , );
Graphics g = Graphics.FromImage(image);
try
{
//生成随机生成器
Random random = new Random();
//清空图片背景
g.Clear(Color.White);
////画图片的背景噪音线
//for (int i = 0; i < 25; i++)
//{
// int x1 = random.Next(image.Width);
// int x2 = random.Next(image.Width);
// int y1 = random.Next(image.Height);
// int y2 = random.Next(image.Height);
// g.DrawLine(new Pen(Color.Silver), x1, x2, y1, y2);
//}
Font font = new System.Drawing.Font("Arial", , (System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic));
System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(, , image.Width, image.Height), Color.Blue, Color.DarkRed, 1.2f, true);
g.DrawString(validateNum, font, brush, , );
//画图片的前景噪音点
for (int i = ; i < ; i++)
{
int x = random.Next(image.Width);
int y = random.Next(image.Height);
image.SetPixel(x, y, Color.FromArgb(random.Next()));
}
//画图片的边框线
//g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1);
System.IO.MemoryStream ms = new System.IO.MemoryStream();
//将图像保存到指定流
image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
Response.ClearContent();
Response.ContentType = "image/Gif";
Response.BinaryWrite(ms.ToArray());
}
finally
{
g.Dispose();
image.Dispose();
}
}
c# txt 文件上传、写入TXT文件、创建图形验证码的更多相关文章
- skymvc文件上传支持多文件上传
skymvc文件上传支持多文件上传 支持单文件.多文件上传 可以设定 文件大小.存储目录.文件类型 //上传的文件目录 $this->upload->uploaddir="att ...
- Struts1文件上传、单文件、多文件上传【Struts1】
将struts1文件上传的操作汇总了一下,包括单文件上传和多文件上传,内容如下,留作备忘: Struts2实现文件上传的文章(http://blog.csdn.net/itwit/article/d ...
- SpringMVC文件上传下载(单文件、多文件)
前言 大家好,我是bigsai,今天我们学习Springmvc的文件上传下载. 文件上传和下载是互联网web应用非常重要的组成部分,它是信息交互传输的重要渠道之一.你可能经常在网页上传下载文件,你可能 ...
- 强大的支持多文件上传的jQuery文件上传插件Uploadify
支持多文件上传的jQuery文件上传插件Uploadify,目前此插件有两种版本即Flash版本和HTML5版本,对于HTML5版本会比较好的支持手机浏览器,避免苹果手机Safari浏览器不支持Fla ...
- struts文件上传(多文件)
第01步:配置web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version= ...
- SpringMVC单文件上传、多文件上传、文件列表显示、文件下载(转)
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 本文详细讲解了SpringMVC实例单文件上传.多文件上传.文件列表显示.文件下载. 本文工程 ...
- yii2.0单文件上传和多文件上传
yii2文件上传使用到yii2自带的文件上传类UploadFIle,以及对应的模型规则,这里分别介绍单文件上传和多文件上传: yii2单个文件上传: 上传步奏,先创建上传表单模型model(包含验证规 ...
- 使用PHP实现文件上传和多文件上传
PHP 2013 年 9 月 4 日 暂无评论 在PHP程序开发中,文件上传是一个使用非常普遍的功能,也是PHP程序员的必备技能之一.值得高兴的是,在PHP中实现文件上传功能要比在Java.C#等语言 ...
- (29)Spring boot 文件上传(多文件上传)【从零开始学Spring Boot】
文件上传主要分以下几个步骤: (1)新建maven java project: (2)在pom.xml加入相应依赖: (3)新建一个表单页面(这里使用thymleaf); (4)编写controlle ...
- PHP实现文件上传和下载(单文件上传、多文件上传、多个单文件上传)(面向对象、面向过程)
今天我们来学习用PHP进行文件的上传和下载,并且用面向过程和面向对象的方式对文件上传进行一个限制 一.简单的上传测试 1.客户端:upload.php 2.后端:doAction.php 结果: 二. ...
随机推荐
- UESTC 1717 Journey(DFS+LCA)(Sichuan State Programming Contest 2012)
Description Bob has traveled to byteland, he find the N cities in byteland formed a tree structure, ...
- mysql数据库配置主从同步
MySQL主从同步的作用 .可以作为一种备份机制,相当于热备份 .可以用来做读写分离,均衡数据库负载 MySQL主从同步的步骤 一.准备操作 .主从数据库版本一致,建议版本5.5以上 .主从数据库数据 ...
- protected、public、private
一.protected成员 1. 受保护的成员的可访问性 对于一个类的protected成员,①该类的用户(如类对象)不能访问它,②该类的派生类的成员(及其友元)可以访问它. 派生类的成员及其友元不能 ...
- Alpha版——版本控制报告(Thunder)
Part One 回答问题: 0.在吹牛之前,先回答这个问题:如果你的团队来了一个新队员,有一台全新的机器,你们是否有一个文档,只要设置了相应的权限,她就可以根据文档,从头开始搭建环境,并成功地把最新 ...
- bootstrap使用中遇到的坑
一.例如: <div class="form-group"> <label class="control-label col-lg-3"> ...
- LintCode-71.二叉树的锯齿形层次遍历
二叉树的锯齿形层次遍历 给出一棵二叉树,返回其节点值的锯齿形层次遍历(先从左往右,下一层再从右往左,层与层之间交替进行) 样例 给出一棵二叉树 {3,9,20,#,#,15,7}, 返回其锯齿形的层次 ...
- Uncaught ReferenceError: wx is not defined
程序的分享功能调用了微信的接口,但是忽然发现就报这个错误, Uncaught ReferenceError: wx is not defined 同时下方还有这个错误 This content sho ...
- DEDE去掉会员登录及注册验证码的方法
1.登录打开member/index_do.php 删除245-250行,即: if(strtolower($vdcode)!=$svali || $svali=='') { ResetVdValue ...
- arp_ignore
上一篇文件说了arp_announce,那么到这里arp_ignore,我们直接看代码应该也比较容易立即了 目前我知道的是arp_ignore = 0,只要IP是自己机器上的,都可以回复: 说实话就是 ...
- apiDoc 入门
网站 http://apidocjs.com/#demo Install npm install apidoc -g Run apidoc -i myapp/ -o apidoc/ -t mytemp ...