File.ashx

合集下载

as file在python中的用法

as file在python中的用法

as file在Python中的用法一、as file简介在Python中,as file通常与上下文管理器和文件操作相关。

这里的 "as file" 指的是一种文件处理方式,即将文件对象赋值给另一个变量名,以便更方便地进行文件操作和管理。

这种方式允许你在不同的上下文中引用和处理同一个文件对象,而不必每次都重新打开或创建它。

二、as file在上下文管理器中的应用上下文管理器(Context Manager)是Python中一个非常有用的概念,它允许你定义一段代码的执行环境。

最常见的上下文管理是文件操作,如打开和关闭文件。

使用with语句和as关键字,你可以指定一个变量来接收文件对象,以便在with块内进行操作。

例如:with open('example.txt', 'r') as file:content =file.read()# 在这里对文件进行操作在这个例子中,with open('example.txt', 'r') as file:这行代码创建了一个上下文,其中文件以只读模式打开,并赋值给file变量。

在with块内部,你可以通过file变量引用并操作文件对象。

当with块结束时,文件会自动关闭,无需手动调用close()方法。

三、as file与with语句的关联with语句是Python中实现上下文管理的一种方式,它可以确保资源的正确释放,避免资源泄漏等问题。

在使用with 语句打开文件时,可以将打开的文件对象赋值给一个变量(如file),以便在with块内使用该变量来引用文件对象。

这样,你可以在块内执行各种文件操作,而无需每次都写出完整的文件对象名称。

四、as file与文件操作使用as file和上下文管理器可以简化文件操作的过程。

你可以在with块内执行各种文件相关的操作,如读取内容、写入内容、移动指针等。

.net ASHX 教程

.net  ASHX 教程

ASHX 一般处理程序教程写在最前面:本文是翻译的/ashx的博客文章。

目的是为了加深自己对ASHX文件的理解。

你不想创建一个普通的Web窗体页。

而又要通过一个查询字符串返回一个动态的图片、XML或者非HTML网页。

这是一个用C#编程语言编写的使用ASHX(一般处理程序)的简单教程。

简介首先,我们来回顾一下使用ASHX文件的目的。

也许我们想在URL 中使用这个ASHX文件动态的返回数据内容。

我们使用的URL查询字符串如下: /?file=name.入门:怎么添加一个ASHX文件呢?打开你的网站,在网站上点击“添加新项”的菜单,此时打开了”添加新项”窗口,选择一般处理程序(Generic Handler),这时你将看到一个有一些代码的Handler.ashx文件。

自动生成的代码我们注意到在ASHX文件中自动生成的代码,定义了IHttpHandler 接口的2个方法。

最重要的方法是ProcessRequest(),无论是请求还是输出,这个方法都会被调用到。

你不应该修改任何默认继承的接口成员。

URL映射通常,使用一个新的URL替代旧的URL或者路径是可行的。

为了向后兼容和搜索引擎优化,在你的网站上,你也许想用新的处理程序代替一个旧的URL地址。

用URL映射可以解决此问题。

当然,你也可以用更复杂的路径重新方法。

Web.config中的部分代码<system.web><urlMappings enabled="true"><add url="~/Default.aspx"mappedUrl="~/Handler.ashx"/></urlMappings>……..</system.web>以上代码将自动将一个连接转到另一个上面。

当Default.aspx页面被请求时,Handler.ashx文件将取而代之。

ashx是什么文件,如何创建

ashx是什么文件,如何创建

.ashx文件用于写web handler的。

其实就是带HTML和C#的混合文件。

当然你完全可以用.asp x 的文件后缀。

使用.ashx可以让你专注于编程而不用管相关的WEB技术。

.ashx必须包含IsR eusable. 如下例所示<% @ webhandler language="C#" class="AverageHandler" %>using System;using System.Web;public class AverageHandler : IHttpHandler{public bool IsReusable{ get { return true; } }public void ProcessRequest(HttpContext ctx){ctx.Response.Write("hello");}}.ashx比.aspx的好处在与不用多一个html注意了VS2005中Web应用程序项目模板里的Generic Handler 项,发现它是一个.ashx文件,实际上它是一个HttpHandler。

后来查了一下.Net SDK文档,发现1.1也支持.ashx,但是没有给出详细内容。

我们都知道,HttpHandler是一个彻底自定义Http请求的方法,它通过web.config来定义运行时来过滤出要自定义的Http请求,发送到定义在web.config的指定类中。

利用.ashx文件是一个更好的方法,这个文件类似于.aspx文件,可以通过它来调用HttpHandler类,从而免去了普通.aspx页面的控件解析以及页面处理的过程。

这个文件特别适合于生成动态图片,生成动态文本等内容。

建立方法如下:首先打开一个Web项目,然后在任意目录下使用VS2003解决方案资源管理器的“添加”-->“添加新项”,在对话框中选择“文本文件”,然后在文件名处输入“TextBuilder.ashx”。

file上传控件onchange事件失效的解决方法

file上传控件onchange事件失效的解决方法

最近在做项目时,遇到一些用户操作方面的问题,用户想点击input file控件的浏览就直接将文件读取到列表中,我使用StreamReader读取文件时,遇到IO权限的问题,要想读取文件到StreamReader 中必须对该文件享有User可读权限,许多用户的客户端不可能手动设置给这个用户的权限,考虑到安全问题,我只好先上传到服务器端,然后再读取上传后的文件,这样权限问题就解决了。

但是直接点击input file控件就上传,就要使用异步上传了,我在寻找file 控件的部分事件时,发现onchange竟然存在这样一个问题,第一次浏览时是可以使用的,再浏览时onchange也就不激发了,为什么呢,曾经想过onpropertychange这个事件,尝试后依然不激发。

后来我寻找了一个解决方法,就是每点击浏览激活onchange事件一次,就重新初始化一下这个控件,毕竟第一次onchange是可以激发的。

代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""/T R/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="/1999/xhtml"><head runat="server"><title>无标题页</title><script language="javascript" type="text/javascript" src="js/jquery.pack.js"></ script><script language="javascript" type="text/javascript" src="js/ajaxfileupload.js" ></script><script type="text/javascript">$(function(){$("#File1").change(function(){fileOnchage();});});function fileOnchage(){var content = '\<input id="File1" name="File1" type="file" onchange="fileOnchage(); " />\';$("#dv").append(content);$.ajaxFileUpload({url:'response/Handler.ashx', //需要链接到服务器地址secureuri:false,fileElementId:'File1', //文件选择框的id属性 dataType: 'json', //服务器返回的格式,可以是jsonsuccess: function (data, status){//bind(data);},error: function (data, status, e){alert(e);}});$("#File1").remove();}</script></head><body><form id="form1" method="post" action="" enctype="multipart/form-data"><div id="dv"><input id="File1" name="File1" type="file" /></div></form></body></html>我利用了jquery的remove方法,remove方法只会移除单个元素,所以新添加的会代替原来的继续使用。

百度编辑器(UEditor)上传图片

百度编辑器(UEditor)上传图片

上传图片配置文件:
一开始我上传图片的时候失败,网上有人说需要把net文件夹下的wen.config给删除掉。

修改配置文件后需要到imageUp.ashx页面做如下处理
把箭头指的这段头引用文件给删除掉。

图片就可以上传成功了
效果如下:
到此为止图片上传就搞定了。

附件上传:
附件上传这块需要到配置文件editor_config.js里面做如下处理
然后把net文件夹下面的web.config文件里面的
把这一句加到你项目的跟目录下的web.config
然后这块需要注意的是fileUp.ashx这个页面有设置上次文件大小限制的参数可以根绝自己的实际需求更改。

如果没有上面的操作上传附件的时候很有可能失败!失败情况可能是:
,成功的效果是这样的:
希望能给大家带来方便。

上传文件——file标签深藏功与名

上传文件——file标签深藏功与名

上传⽂件——file标签深藏功与名 在Html标签中,<input type="file"/>是被⽤来上传⽂件的,但是这哥们⼉在不同的浏览器下各有⼀副嘴脸,怎⼀个“别扭”了得。

⼀直想解决这个头疼的问题,最近在读了⼀篇博⽂之后,忽然有了思路。

在上传⽂件时,<input type="file"/>是被放在⼀个form中,form既然要上传⽂件,⼀定是以post⽅式传输数据,enctype也要设置成multipart/form-data。

如下:<form id="uploadForm" action="test.ashx" method="post" enctype="multipart/form-data"><input type="file" name="uploadFile" id="uploadFile" style="visibility:hidden;position:absolute;top:0px;width:0px"/></form><input type="button" value="上传" id="btn"/> 既然file标签长得不好看,就不让它显⽰,本来想设置display属性,但是在苹果浏览器下没能实现上传,只好设置visibility为hidden,但这么⼀来,file标签就独占了空⽩的⼀块区域,所以⼜继续设置了后⾯三个属性。

这样页⾯上就只有⼀个button按钮,此时只需要设置按钮点击时触发file标签的点击事件,⽽当选择完上传的⽂件之后,将触发file标签的onchange事件,只需要在此事件中提交form表单的数据即可。

ashx编写格式 -回复

ashx编写格式 -回复

ashx编写格式-回复如何使用ashx编写格式。

Ashx(Active Server Handler)是中用来处理请求的处理程序文件。

它通常用于处理AJAX请求、返回特定格式的数据或执行其他服务器端任务。

在本文中,我们将一步一步地介绍如何使用ashx编写格式。

第一步:创建ashx文件首先,打开你喜欢的文本编辑器,如Visual Studio Code或Notepad++。

然后,创建一个新的文本文件,并将其保存为.ashx扩展名。

例如,你可以将文件命名为MyHandler.ashx。

第二步:设置命名空间和相关引用打开ashx文件,并在文件的顶部,添加以下代码:csharp< WebHandler Language="C#" Class="MyHandler" >`< WebHandler >`指令告诉服务器,这是一个用C#编写的Web处理程序,并且`Class="MyHandler"`定义了处理程序的类名。

第三步:编写处理程序类在ashx文件中的`< WebHandler >`指令之后,开始编写处理程序类。

这个类需要实现IHttpHandler接口,并且包含一个ProcessRequest方法。

以下是一个基本的处理程序类示例:csharpusing System;using System.Web;public class MyHandler : IHttpHandler{public void ProcessRequest(HttpContext context){context.Response.ContentType = "text/plain";context.Response.Write("Hello, World!");}public bool IsReusable { get { return false; } }}在上面的示例中,我们首先设置了`context.Response.ContentType`,以指定服务器返回的内容类型。

ashx是什么文件,什么时候使用ashx

ashx是什么文件,什么时候使用ashx

ashx是什么⽂件,什么时候使⽤ashx.ashx应⽤:处理⽣成动态图⽚、⽣成动态⽂本等不需要回传处理的任务处理ajax请求可以⽤ashx⽂件创建web 服务。

类似web servers 。

⽐如传输json格式的数据轻量的信息交互都可以⽤这个,没有aspx那么复杂的⽣命周期.ashx⽂件有个缺点,他处理控件的回发事件⾮常⿇烦,⽐如说如果⽤它来⽣成DataGrid的列表也不是不⾏,但是处理数据的回发,需要⼀些.aspx页的功能,只有⾃⼰⼿动处理这些功能。

所以,⼀般使⽤.ashx,⽤来输出⼀些不需要回发处理的项⽬即可。

利⽤“⼀般处理程序”。

如果你实⽤的是vs2005你在添加新项中可以见到“⼀般处理程序”,它的后缀名为.ashx。

它是什么?其实它和.aspx很类似。

先问问.aspx是如何⼯作的?也许你知道,.aspx能处理来⾃外部传⼊的请求,然后它还能处理这个请求并⽣成⼀个html作为结果返回。

这是典型的处理外部请求的⽅式。

.aspx 就是专门为处理“典型”的请求⽽出现的。

那么如果我们现在需要⼀种⼜能处理外部请求⼜需要我们⾃定义的处理这个请求那⼜要怎么做呢?(也就是不实⽤“典型”的⽅式来处理)。

.ashx就能帮你做到这⼀点。

⾸先你发现 <%@ WebHandler Language="C#" Class="ImageHandler" %>这句话。

想想⼀个的页⾯是不是也有类似的东西。

其实它表明了现在的这个⽂件可以处理⼀个来⾃外部的请求。

当然就它是不⾏的。

接下来关键的东西就是底下建⽴的类,它实现了⼀个关键的接⼝:IHttpHandler。

实现这个接⼝表明你现在将以何种⽅式来处理来⾃外部的请求。

其中有⼀个⽅法和属性需要实现,你可以在ProcessRequest⽅法中编写如何处理请求的细节⽽IsReusable表明其它的请求是否可以使⽤这个类的⼀个实例。

我们可以暂时忽略IsReusable属性。

文件格式大全(A-H)

文件格式大全(A-H)

⽂件格式⼤全(A-H)⽂件格式⼤全(A-H)经常有⽹友问什么什么扩展名的⽂件要⽤什么程序来打开,事实上,电脑上⾯真正能表⽰⽂件的类型并且得到⼀致承认的扩展名并不是很多,⽽⼤多数扩展名⼀般都是由使⽤该⽂件的软件的开发者定义,例如,我写的程序⾥⾯⽤到的数据⽂件,我⼀般就⽤CCB这个扩展名,这说明,单纯从扩展名上来了解这个⽂件⼏乎可以说是完全没有意义的,另外,以前经常玩DOS游戏的朋友可能还记得这两个⽼游戏,⼀个是叫“雀之塔”的,⾥⾯的所有⽂件,包括数据⽂件,扩展名都是.exe,你要是以为它们都是我们熟悉的可执⾏⽂件那就错了,还有⼀个叫“美⼥梭哈”的扑克游戏,⾥⾯的数据⽂件全部都叫TIF,你要是以为那些都是图⽚⽂件TIFF格式那也⼤错特错了。

所以说,只有众所周知的扩展名才有意义,⼀些由软件开发者⾃定义的扩展名,对使⽤者来说是没意义的。

⾄于⽤什么软件来打开,我的看法是,你在哪⾥找到这种⽂件的,就⽤那个软件来打开,如果你在垃圾堆⾥捡到⼀个不知道是什么的⽂件,那我看你还是把它放回垃圾堆吧,呵呵。

⽽且,关键的问题是你要打开它来做什么,如果你不知道它是什么,只是有点好奇想打开它来看看,那么⽤ULTRAEDIT或记事本来打开就可以了,⽽如果你连它是什么⽂件什么格式都不知道,却想要修改它,那就⼏乎是不可能的了,还有,⼀些⽂件格式已经成为标准,例如GIF格式,⽤来打开GIF⽂件的软件少说也有上千个。

⽽且,现在有⼤量的软件使⽤相同的扩展名的⽂件,⽽它们之间除了扩展名相同之外没有任何共同之处,例如,.dat,既有可能是VCD影碟⾥⾯的MPEG⽂件,也有可能是不同的软件使⽤的格式完全不同的数据⽂件,所以,除了那些众所周知的扩展名,那些扩展名⼏乎不代表任何意义。

当然,有些⽹友在⽹上下载了⼀些⽂件,回来后却不知道怎样⽤,例如下载了⼀些教程,是扩展名是.wdl的,或者⼀些是.000,.001,等的,前⾯⼀个是华康的DYNADOC格式,后⼀个是超星格式,其实这样想⼀下,你既然下载它,⼀定是有理由的,⾄少你知道它是教程,我想你不会⽆缘⽆故地,连它是什么东西都不清楚就下载下来吧?既然这样,你同时看看下载教程的地⽅,⼀般会有说明⽽且都会有这两个阅读器下载的。

sql2000安装问题与解决方法

sql2000安装问题与解决方法

1. 如果报***挂起的错误就按照下面的操作:解决方法:点击“开始菜单”》点击“运行”》输入“regedit”运行,打开注册表编辑器》查看LOCAL MACHINE/SYSTEM/controlset/Control/session Manager》在右侧的显示框中找到PendingFileRenameopertions并将其删掉。

2. 如果在安装到数据库访问组件(MDAC)时出现了错误提示:SQL Redist content: Command line option syntax error. Type Command /? for Help.解决方法:This problem may occur if all the following conditions are true:? You run the SQL Server 2000 SP3 Setup.bat file from a folder that contains double-byte character set (DBCS)characters in the folder name.? An ODBC client program that uses the Sqlsrv32.dll file is running on your computer.其中第一点是说,如果你把安装文件放在一个拥有双字节的名字的文件夹里就活该倒大霉。

我的SQL SERVER2000安装盘的所在文件夹起了个中文名字,而汉字正是所谓的双字节。

将文件夹名字改回英文再装,问题解决了。

3.如果出现sqldmo.dll无法注册,或者使用regsvr32 sqldmo.dll出现dllregisterserver失败返回代码:0x80020009解决方法:在安装完整sql2000后,如果还是这样有问题,可以再安装一下安装文件夹里的msde下的setup ,然后再次运行regsvr32 sqldmo.dll即可。

文件上传漏洞总结

文件上传漏洞总结

⽂件上传漏洞总结很久之前总结的,忘记参考哪些⽂章了。

如有参考,请评论后我添加。

漏洞产⽣原因由于⽂件上传功能实现代码没有严格限制⽤户上传的⽂件后缀以及⽂件类型, 导致攻击者能够向某个可通过 Web 访问 的⽬录上传恶意⽂件,并被脚本解析器执⾏,这样就可以在远程服务器上执⾏恶意脚本靶场:常见的⽂件检测⽅式以及绕过前端JS检测:绕过⽅式:在前端页⾯修改JS上传抓包⼯具拦截后修改后缀名上传MIME检测:对Content-Type进⾏了检测绕过⽅式:抓包⼯具拦截 修改Content-Type为合法上传⽂件类型 例如img/gif⽂件后缀名⿊名单检测:绕过⽅式:使⽤其他可解析的后缀绕过利⽤windows特性绕过:加空格绕过:当⿊名单中限制上传.php后缀的⽂件时 我们可以上传test.php+空格 这时服务器获取到的后缀是.php+空格 不再⿊名单中 上传成功。

由于windows⽂件系统的特性 在⽣成的test.php+空格=test.php->加点绕过:当⿊名单中限制上传.php后缀的⽂件时 我们可以上传test.php. 这时服务器获取到的后缀是空 不在⿊名单中 上传成功 由于windows⽂件系统的特性 在⽣成的test.php.=test.php->::$DATA绕过:ADS是nfts磁盘格式的⼀个特性 由于NTFS交换数据流 在上传⽂件时 如果系统对请求正⽂的filename匹配不当的话可能会导致绕过在php环境下可以上传test.php::$DATA例:Linux也可利⽤系统本⾝的命名规则绕过: linux命名规则1、⽂件名最⼤长度为2552、全路径长度最⼤为4096(16级最⼤⽂件长度)3、区分⼤⼩写4、除“/”之外所有字符都可以使⽤5、linux不以⽂件扩展名区分⽂件类型,对linux来说⼀切皆⽂件。

后缀名fuzz字典:upload-fuzz-dic-builder 上传漏洞fuzz字典⽣成脚本后缀名双写绕过:123. pphphp->123.php.htaccess绕过:.htaccess是apache服务器中的⼀个配置⽂件 它负责相关⽬录下的⽹页配置 通过htaccess⽂件 可以帮我们实现:⽹页301重定向 ⾃定义404错误页⾯ 改变⽂件拓展名 允许/组织特定的⽤户或者⽬录的访问 禁⽌⽬录列表 配置默认⽂档等功能。

assoc

assoc
.accdr=Access.ACCDRFile.12
.accdt=Access.ACCDTFile.12
.accdu=Access.WizardUserDataFile.12
.accessor=VisualStudio.accessor.9.0
.ace=HaoZip.ace
.acl=ACLFile
.dbml=VisualStudio.ORDesigner.9.0
.dbproj=VisualStudio.dbproj.9.0
.dd=VisualStudio.dd.9.0
.def=VisualStudio.def.9.0
.der=CERFile
.desklink=CLSID\{9E56BE61-C50F-11CF-9A2C-00A0C90A90CE}
.hpp=DevCpp.hpp
.hta=htafile
.htm=htmlfile
.html=htmlfile
.hxa=MSHelp.hxa.2.5
.hxc=MSHelp.hxc.2.5
.hxd=MSHelp.hxd.2.5
.hxe=MSHelp.hxe.2.5
.hxf=MSHelp.hxf.2.5
.hxh=MSHelp.hxh.2.5
.hxi=MSHelp.hxi.2.5
.hxk=MSHelp.hxk.2.5
.hxq=MSHelp.hxq.2.5
.hxr=MSHelp.hxr.2.5
.hxs=MSHelp.hxs.2.5
.hxt=MSHelp.hxt.2.5
.hxv=MSHelp.hxv.2.5
.docxml=wordxmlfile

ashx后门

ashx后门

ashx后门⼀、标准ASPX⼀句话⽊马.NET平台下的⼀句话⽊马则百年不变,最常见的当属下⾯这句<%@ Page Language=”Jscript”%><%eval(Request.Item[“pass”],”unsafe”);%>想必这句话已经成⼤多数防御产品的标准样本,除此以外还有上传⽂件的⼀句话,像这种的从严格意义上不能算是⼀句话⽊马,只是⼀个简单的上传⽂件的功能,实际的操作还是⼤马或者⼩马的操作⾏为。

<%if (Request.Files.Count!=0) { Request.Files[0].SaveAs(Server.MapPath(Request[“f”]) ); }%>⼆、ASHX⼀句话⽊马这个马⼉已经实现了菜⼑可连,可⽤,还是挺棒的,但因为体积过⼤,并且在服务端实现了⼤多数功能,其实更像是⼀个⼤马,只是对客户端的菜⼑做了适配可⽤。

⼆、ASHX写⽂件⽊马⽊马执⾏后会在当前⽬录下⽣成webshell.asp⼀句话⽊马,密码是pass 也可以写⼊其它⽂件。

<%@ WebHandler Language="C#" class="Handler"% >using System;using System.Web;using System.IO;public class Handler:IHttpHandler {public void ProcessRequest (HttpContext context) {context.Response.ContentType = "text/plain";StreamWriter file = File.CreateText(context.Server.MapPath("webshell.asp")));file.Write("<%eval request(\"pass\")%>");file.Flush();file.Close();context.Response.Write("");}public bool IsReusable {get {return false;}}}将脚本中的Asp⼀句话改成菜⼑的Aspx⼀句话~不过执⾏的时候爆错,说未知指令@Page。

(完整word版)ASPNET基础知识

(完整word版)ASPNET基础知识

1。

ASP。

NET的两种编码方式是什么,什么是代码内嵌,什么是代码后置?Web页面的父类是谁?代码内嵌和代码后置。

代码内嵌把业务逻辑编码和显示逻辑编码交叉使用。

代码后置式业务逻辑代码和显示逻辑代码分开使用。

system。

web.ui。

page2.Web控件的AutoPostBack属性的作用是什么?控件的值改变后是否和服务器进行交互(自动回传)3。

验证服务器控件有哪些,他们有哪些常用的属性,ControlToValidate属性的作用是什么?有哪两种服务器控件?RequiredFieldValidator:controltovalidate(验证的控件ID,共有的属性),text,ErrorMessage||||(dropdownlist控件验证时InitialValue属性是如果用户没有改变初始值,会验证失败)CompareValidator:controltocompare(要进行对比的控件),type(比较类型设置),operator(比较运算符,默认为等于),ValueToCompare(进行比较的值)RangeValidator:type(验证类型(5种)),MaximumValue(最大值),MinimumValue(最小值)(包括上下限)RegularExpressionValidator:ValidationExpression(设置要匹配的正则表达式)ValidationSummary:showMessageBox(是否显示弹出的提示消息),ShowSummary(是否显示报告内容)HTML服务器控件和web服务器控件4。

什么是Session,如何进行Session的读写操作,使用什么方法可以及时释放Session?Session 是用于保持状态的对象.Session 允许通过将对象存储在 Web服务器的内存中在整个用户会话过程中保持任何对象.通过键值对的方式进行读写;clear()和abandon()方法5.运行ASP。

JQuery上传插件Uploadify使用详解

JQuery上传插件Uploadify使用详解

Uploadify是JQuery的一个上传插件,实现的效果非常不错,带进度显示。

不过官方提供的实例时php版本的,本文将详细介绍Uploadify在Aspnet中的使用,您也可以点击下面的链接进行演示或下载。

∙官方下载∙官方文档∙官方演示∙首先按下面的步骤来实现一个简单的上传功能。

1 创建Web项目,命名为JQueryUploadDemo,从官网上下载最新的版本解压后添加到项目中。

2 在项目中添加UploadHandler.ashx文件用来处理文件的上传。

3 在项目中添加UploadFile文件夹,用来存放上传的文件。

进行完上面三步后项目的基本结构如下图:4 Default.aspx的html页的代码修改如下:<html xmlns="/1999/xhtml"><head runat="server"><title>Uploadify</title><link href="JS/jquery.uploadify-v2.1.0/example/css/default.css"rel="stylesheet" type="text/css" /><link href="JS/jquery.uploadify-v2.1.0/uploadify.css"rel="stylesheet" type="text/css" /><script type="text/javascript"src="JS/jquery.uploadify-v2.1.0/jquery-1.3.2.min.js"></script><script type="text/javascript"src="JS/jquery.uploadify-v2.1.0/swfobject.js"></script><script type="text/javascript"src="JS/jquery.uploadify-v2.1.0/jquery.uploadify.v2.1.0.min.js"></scr ipt><script type="text/javascript">$(document).ready(function(){$("#uploadify").uploadify({'uploader':'JS/jquery.uploadify-v2.1.0/uploadify.swf','script': 'UploadHandler.ashx','cancelImg': 'JS/jquery.uploadify-v2.1.0/cancel.png','folder': 'UploadFile','queueID': 'fileQueue','auto': false,'multi': true});});</script></head><body><div id="fileQueue"></div><input type="file" name="uploadify" id="uploadify" /><p><a href="javascript:$('#uploadify').uploadifyUpload()">上传</a>|<a href="javascript:$('#uploadify').uploadifyClearQueue()">取消上传</a></p></body></html>5 UploadHandler类的ProcessRequest方法代码如下:public void ProcessRequest(HttpContext context){context.Response.ContentType = "text/plain";context.Response.Charset = "utf-8";HttpPostedFile file = context.Request.Files["Filedata"];string uploadPath =HttpContext.Current.Server.MapPath(@context.Request["folder"])+"\\";if (file != null){if (!Directory.Exists(uploadPath)){Directory.CreateDirectory(uploadPath);}file.SaveAs(uploadPath + file.FileName);//下面这句代码缺少的话,上传成功后上传队列的显示不会自动消失context.Response.Write("1");}else{context.Response.Write("0");}}6 运行后效果如下图:7 选择了两个文件后,点击上传,就可以看到UploadFile文件夹中会增加这两个文件。

程序文件范本

程序文件范本

程序文件范本1.我看过一个c语言程序包含一个源程序文件的例子,我想看一看一个c语程序首先需要编译,然后连接形成可执行文件。

以Clang编译器为例。

首先,创建main.c文件:#include"printnum.h"intmain(){intnum=42;printnum(num);return0;}然后,创建printnum.h文件:#pragmaoncevoidprintnum(intnum);其中,#pragmaonce告诉编译器这个头文件不要重复包含。

接下来,创建printnum.c文件,实现printnum函数:#includestdio.h;voidprintnum(intnum){printf("%d\n",num);}现在,文件夹里有两个源文件:main.c和printnum.c。

然后我们打开命令行。

先编译源文件main.c,生成main.o:clang-cmain.c-omain.o再编译源文件printnum.c,生成printnum.o:clang-cprintnum.c-oprintnum.o最后将main.o与printnum.o连接生成main.exe:clangmain.oprintnum.o-omain.exe运行main.exe,输出42,成功。

2.谁有比较详细的样板管理程序文件玖玖泰丰,十年验厂老品牌,助您一次性通过验厂!以下资料由深圳玖玖泰丰企业管理顾问有限公司提供:1.目的:正确处理样板,务求能在各相关部门正常地发挥应有的参考价值。

2.适用范围:本程序只用于本公司内部相关部门。

3.职责:本程序由管理代表负责监察其执行及修订。

4.程序:4.1客供样板管理客供样板必须由负责该项目的部门负责保存,如设计开发室,并做好保存记录,以便将来作为该项目设计开发结果的验证依据。

4.2寄客样板管理4.2.1样板做出后,经负责该项目的部门主管核对,再经业务部复核正确后,才可寄出。

ashx接收参数ashx传递参数

ashx接收参数ashx传递参数

ashx接收参数ashx传递参数原⽂发布时间为:2009-09-30 —— 来源于本⼈的百度⽂章 [由搬家⼯具导⼊]Handler.ashx⽂件:<%@ WebHandler Language="C#" Class="Handler" %>using System;using System.Web;using System.Data;public class Handler : IHttpHandler {public void ProcessRequest (HttpContext context) {string strSql = "Select IP from Web where _D="+context.Request.QueryString["id"];DataUtility objData = new DataUtility();DataSet dstList = objData.QueryData(strSql);context.Response.ContentType = "text/plain";context.Response.Write("document.write(\"" + dstList.Tables[0].Rows[0][0].ToString() + "\")"); }public bool IsReusable {get {return false;}}html或者 aspx⽂件:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""><html xmlns="" ><head><script type="text/javascript" src="/ajax/AjaxHandler"></script><title>⽆标题页</title></head><body><script type="text/javascript" src="Handler.ashx?id=2"></script></body></html>输出结果为 ID为2的 IP。

file.exists实现方法

file.exists实现方法

在编程中,`file.exists` 是用来检查文件是否存在的函数。

这个函数的实现方式会因编程语言的不同而有所不同。

这里有一些主要编程语言的实现方式:1. **Python**:```pythonimport osif os.path.exists(filepath):print("File exists")else:print("File does not exist")```2. **JavaScript (Node.js)**:```javascriptconst fs = require('fs');fs.exists(filepath, (exists) => {if (exists) {console.log('File exists');} else {console.log('File does not exist');}});```3. **Java**:```javaimport java.nio.file.*;public class Main {public static void main(String[] args) {Path filepath = Paths.get(filepath);if(Files.exists(filepath)) {System.out.println("File exists");} else {System.out.println("File does not exist");}}}```4. **C#**:```csharpusing System.IO;public class Program {public static void Main(string[] args) {if (File.Exists(filepath)) {Console.WriteLine("File exists");} else {Console.WriteLine("File does not exist");}}}```请注意,你需要将`filepath` 替换为你需要检查的文件的实际路径。

fileinfo相对路径

fileinfo相对路径

fileinfo相对路径文件和文件路径是计算机操作中很关键的概念。

而在PHP语言中,我们可以使用fileinfo来获取一个文件的信息。

与此同时,相对路径是编程中经常使用的一种路径方式。

那么,如何使用fileinfo来获取一个文件的相对路径呢?下面是实现相对路径的步骤:1.先通过fileinfo获取当前文件的绝对路径在PHP中,我们可以使用如下代码来获取当前文件的路径$filePath = __FILE__;$realPath = realpath($filePath);这里的__FILE__指代当前文件的路径,realpath()函数可以用来将相对路径转换为绝对路径。

2.获取当前文件所在目录的绝对路径当前文件所在的目录可以使用dirname()函数来获取。

代码如下:$dirPath = dirname($realPath);3.获取要读取文件的绝对路径如果要获取其他文件的相对路径,则需要先获取这个文件的绝对路径。

和上面一样,使用realpath()函数将相对路径转换为绝对路径。

代码如下:$file = "example.txt";$absFilePath = realpath($file);4.获取要读取文件所在目录的绝对路径要读取的文件所在的目录可以使用dirname()函数获取。

代码如下:$absDirPath = dirname($absFilePath);5.计算相对路径通过计算要读取文件所在目录与当前文件所在目录的相对关系,就可以得到要读取文件的相对路径了。

在这里,我们可以使用PHP的内置函数chdir()和getcwd()来实现。

chdir()函数可以将当前工作目录更改为指定的目录。

在这里,我们先更改当前工作目录为要读取文件所在的目录,然后获取当前工作目录的路径,即为要读取文件所在目录的绝对路径。

代码如下:chdir($absDirPath);$relativeDirPath = getcwd();这里的getcwd()函数可以获得当前的工作目录。

用jQueryFileUpload做的上传控件demo,支持同页面多个上传按钮

用jQueryFileUpload做的上传控件demo,支持同页面多个上传按钮

⽤jQueryFileUpload做的上传控件demo,⽀持同页⾯多个上传按钮需求有这么⼀个需求,⼀个form有多个⽂件要上传,但⼜不是传统的图⽚批量上传那种,是类似下图这种需求,⼀开始是⽤的swfupload做的上传,但是问题是如果有多个按钮的话,就要写很多重复的代码,于为了代码的简洁所以就开始寻求其他的⽅法,期间试过uploadify,但是由于样式始终调不出来,最后就放弃了,直到发现这么个⼩巧的玩意,jQuery File Upload。

本⽂包含了upload的js实现,html的分析,css的实现等内容,⽂章末尾有git地址最简运⾏时官⽹下载的demo有N多js⽂件,⼀⼤堆js⽂件中只有⼏个才是必要的,其他的⽂件都是⼀些⽤不到的功能,只有在你需要的时候才需要引⽤。

<script src="/jquery/1.10.2/jquery.min.js" type="text/javascript"></script><script src="JS/jquery/jquery.iframe-transport.js"></script><script src="JS/jquery/jquery.ui.widget.js"></script><script src="JS/jquery/jquery.xdr-transport.js"></script><script src="JS/jquery/jquery.fileupload.js"></script>其中iframe那个⽂件是为了进⾏iframe上传,ui⽂件是能选完⽂件⾃动上传的必要⽂件,xdr那个是在ie下才需要的,最后⼀个⽂件是主体后台代码新建⼀个ashx的⽂件,这⾥建⽴⼀个uploadHandler.ashx,然后写⼊如下代码,⽤于保存。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

烯精馏部分蒸汽耗量分别为原来的41%和5.3%。 顺序分离恒沸热回收工艺较传统苯乙烯技术可节约 能耗2
642
MJ/t,降低装置综合能耗15%以上。
表2不同精馏工艺蒸汽耗量比较t/h
乙苯蒸发器配汽 乙苯蒸发器加热蒸汽 乙苯塔再沸器 预分塔再沸器 苯一甲苯塔再沸器0.094 合计
2.164 2.07
8.3 3.46 Z

乙苯一苯乙烯分离工艺能耗、物耗比较 苯乙烯装置能耗主要包括蒸汽、燃料气、电、循

环水、氮气、脱盐水、仪表风等。其中燃料、蒸汽与循 环水所占能耗中的比例高达97%。蒸汽占装置能 耗的70%,其中低压蒸气占52%,低压蒸气除作为 主蒸汽进入反应器外,约30%作为乙苯一苯乙烯再 沸器热源。表1列出常见的苯乙烯分离工艺的能耗 指标。水比是指脱氢反应产物中水与芳烃质量比, 相同工艺水比从1.15变为1.3,能耗增加约500 MJ/t[指每分离1 t苯乙烯(SM)能耗增加约500 MJ]。扣除水比影响,我国目前采用的传统精馏技 术能耗较国外节能技术仍有较大差距。国外典型的 节能工艺包括双塔流程、Lummus共沸热回收工艺 等,其能耗基本上在10
在115℃以内,虽然苯乙烯聚合损失和阻聚剂用量 有所增加,但良好的节能效果使得该工艺技术仍然 有着优越的经济性,见表3(以200 kt/a苯乙烯装置 为例)。
表3精馏工艺综合经济性对比
生产1 t苯乙烯消耗/元 类别
艺苯乙烯聚合损失少。恒沸换热器是恒沸热回收技 术的关键设备,顺序分离工艺预先脱出甲苯等轻组 分,令乙苯/苯乙烯塔顶共沸换热器操作温差加大, 便于共沸换热器的设计、加工与操作。顺序分离恒 沸热回收工艺技术先进,大幅度降低了苯乙烯装置 能耗,设备投资增加较少,综合经济性较好,具有很 强的推广应用前景,可用于苯乙烯成套技术的设计 与建设。本技术亦可用于现有苯乙烯装置的技术改 造,尤其是原采用顺序分离工艺的装置。
energy
(Shanghai Research Institute of Petrochemical Abstract:The ylbenzene_styrene. new
process
ca can
constant
boiling in order separation hot reclaim technique is new with several different dehydrogenation effluent
万方数据
第30卷第6期
2009年12月
化学工业与工程技术
Journal of Chemical Industry&Engineering
V01.30 No.6 Dec.,2009
乙苯一苯乙烯分离节能新工艺
张洪宇,刘文杰
(中国石化上海石油化工研究院,上海
201208)
摘要:顺序分离恒沸热回收技术是一项乙苯一苯乙烯分离节能新工艺。与相同规模不同分离工艺进 行了比较,结果表明,采用该新工艺技术,可以显著降低装置综合能耗,而设备投资略有增加,综合经济 效益显著,可用于苯乙烯装置设计与建设。 关键词:乙苯;苯乙烯;分离工艺;节能
(4):56~61
刘文杰.苯乙烯装置节能工艺研究[j].石油化工设计,
2008,25(4):47~49
崔小明,李明.苯乙烯国虎外生产技术进展[J].中国石 油和化工,2004,(9):40~44
简讯
抑制国内尿素产能过剩的措施
本刊讯虽然专家们对于解决尿素产能过剩问题各有己见,但对限制新产能和淘汰落后产能都无异议,而且其措施越来 越趋于具体。这些措施集中在以下几点: (1)应该将新增优势产能与淘汰落后产能相结合,如资源地新增产能必须首先收购非资源地现有落后产能,获得产能指 标后再异地新建。通过产能置换来整合企业资源,削减企业数量,改善产能结构,保持总量平衡。 (2)不再扩大新产能,不仅包括新上项目,而且包括老厂改造项目。还有,国家的准入门槛不应只从产能的角度,而应该 从提高企业环保、节能减排、安全等综合能力的角度来设定,还要合理布局。 ’(3)非常时期应有非常政策。现阶段应将新建、改建、扩建项目的审批权统一收归国家发改委。在批准新项目前,要求项 目所在地政府必须淘汰相当或更多的落后化肥产能,以有效防范地方政府乱批乱建项目。 (4)不能通过简单注资挽救落后企业,不能仅囿于资源优势上项目。否则,有可能还会把原先的落后企业保存下来。
little.This
process
be used in
styrene
unit design and construction.
Key words:Ethylbenzene;Styrene;Separation process;Energy conservation
苯乙烯是重要的基本有机化工原料之一,用于 制造聚苯乙烯PS和EPS、ABS和SAN等共聚物树 脂、苯乙烯/丁二烯共聚胶乳SB、丁苯橡胶和胶乳 SBR等[1。2]。工业上,苯乙烯主要采用乙苯脱氢方 法生产,该工艺产生的脱氢液主要含有苯乙烯、乙 苯、甲苯、苯等口“]。乙苯、苯乙烯沸点相近,分离困 难,工业上乙苯一苯乙烯分离塔常采用负压操作,分 离塔理论板数在80块以上,回流比大于6.5。乙苯 一苯乙烯分离塔系统的操作能耗很高,低压蒸汽用量 占整个苯乙烯单元的30%以上,冷却水用量也占整 个苯乙烯单元的近35%,综合能耗占苯乙烯单元的 30%~40%‘5~7I。 1传统乙苯一苯乙烯分离工艺 脱氢液分离采用最多的是Lummus的一次脱 氢组分工艺与Fina/Bager顺序分离工艺[8]。国产 苯乙烯负压脱氢技术分离部分采用一次脱氢组分工 艺i但组合了其他国产技术。 1.1一次脱氢组分工艺 脱氢液分离为四塔流程,分别为(苯+甲苯+乙 苯)/苯乙烯塔、(苯+甲苯)/乙苯塔、苯/甲苯塔、苯 乙烯精馏塔。苯乙烯经历2次加热过程,(苯+甲苯
400
2 O.114 11.76 0.114 4


苯乙烯精制单元的损失主要是指苯乙烯在乙苯 一苯乙烯塔、苯乙烯塔及其相关管道中的聚合损失。 苯乙烯聚合速率随温度增高而加快,降低乙苯一苯乙 烯塔操作压力、操作温度,减少预分离塔、乙苯一苯乙 烯塔、苯乙烯塔及相关管道内苯乙烯的停留时间,有 利于减少苯乙烯聚合。顺序分离恒沸热回收技术增 加了恒沸换热器,使得乙苯一苯乙烯塔操作压力略有 增加,该技术每吨苯乙烯焦油量为13 kg。与传统精 馏工艺相比聚合损失略有增加。 4乙苯一苯乙烯分离工艺经济性能比较 由于采用顺序分离工艺,乙苯塔塔顶气中基本 没有苯、甲苯等轻组分,塔顶冷凝器(乙苯、水蒸发 器)的换热温差可达8℃左右,设备投资增加少,乙 苯分离塔的塔顶压力由原工艺的12 kPa提高至36 kPa,塔径可缩小从而减少设备投资;塔釜温度控制
苯乙烯精馏单元采用顺序分离工艺(该分离顺 序已在国内多家苯乙烯装置上应用),即粗苯乙烯液 先经苯、甲苯塔,将苯、甲苯等轻组分和乙苯、苯乙烯 进行分离,塔釜馏分(乙苯、苯乙烯)进入乙苯/苯乙 烯分离塔,塔顶为乙苯,塔釜主要为苯乙烯,在乙苯/ 苯乙烯分离塔塔顶冷凝器(乙苯/水蒸发器)应用恒 沸热回收技术,用于蒸发原料乙苯和水的混合物,从 而节省大量水蒸气达到节能目的。
中图分类号:TQ031.4;TQ025.1
文献标识码:A文章编号:1006—7906(2009)06—0049—03
New energy—saving separation process for styrene producing
Zhang
Hongyu,Liu Wenjie Technology,Shanghai 201208,China)
conservation
process tO separate
eth— the
Comparing
separation
processes,the results show that

make the
energy
consumption of
styrene
unit fall 1
5%,but equipment investment increases only
收稿日期:2009—05—26 作者简介:张洪宇(1974一),男,硕士,工程师,长期从事水处
理技术研究及化工成套技术开发和应用推广工作。 E-mail:hongjundaozhang@sina.tom
万方数据

50

化学工业与工程技术
2009年第30卷第6期
馏,回流比大于6.5。考虑到苯乙烯高温聚合问题, 脱氢工艺一般都采用高真空操作,乙苯一苯乙烯塔顶 温度较低,属于较难回收利用的低温热。 苯乙烯精馏工艺的改进,除了应考虑节能对设
+乙苯)/苯乙烯分离塔塔顶操作压力为24 kPa,塔 釜温度为109℃。
1.2
顺序分离工艺 脱氢液分离为四塔流程,分别为(苯+甲苯)/
(乙苯+苯乙烯)塔、乙苯/苯乙烯塔、苯/甲苯塔(该 塔并人苯烃化工段)、苯乙烯精馏塔。苯乙烯经历3 次塔釜加热过程,乙苯/苯乙烯分离塔塔顶操作压力 为8 kPa,塔釜温度为86℃。 一次脱氢组分工艺与顺序分离工艺基本相当, 但普遍存在的问题是装置综合能耗较高。为此,国 内外以这2种工艺为基础不断开发了多种乙苯一苯 乙烯分离节能新工艺。 2顺序分离恒沸热回收工艺 乙苯和苯乙烯沸点接近,常压下只相差9℃,同 时乙苯/苯乙烯分离塔控制指标,塔顶苯乙烯小于或 等于1.5%,塔釜乙苯小于或等于500×10一,因此 需要的理论级数较多,约80个以上,属典型精密精
参考文献: 胡忆沩,杨梅,梁亮.Lummus/UOP装置苯乙烯单体收 率下降原因分析及换热器填料函的改进[J].化工机械,
2004,31(4):217~221
单价 传统技术 顺序分离恒沸工艺
崔小明.苯乙烯供需现状及发展前景[J].化学工业,
2007,25(5):43~50
刘文杰,黄云群,张洪宇等.乙苯脱氢制苯乙烯反应出料 高温显热回收技术[J].现代化工,2008,28(3):65~67 邱宝军,李红娟.乙苯脱氢制苯乙烯技术研究进展[J]. 辽宁化工,2007,36(12):861~865 王明福,齐航.苯乙烯装置用能分析及节能措施I-J].齐 鲁石油化工,2007,35(3):194~197 洪纯芬.苯乙烯精馏节能技术[J].化学工程,1997,27
相关文档
最新文档