Asp获取文件md5值

网上asp加密字符的MD5很多,也很普遍,但是对文件进行md5的确很少,因为受到asp语言本身的限制。我们知道字符串的md5可以对明文进行不可逆的加密,从而保证数据储存或者传送的安全性。同样的,对文件进行md5加密也是为了保证在网络传送时不被修改和校验,另外还有一个用途就是在个人站点里面的应用:可以保证上传的图片或文件具有唯一性。原理是,上传到服务器之后,同时在数据库中记录该上传文件的md5值,这样在下次传同样文件的时候,可以通过查询数据库是否是相同的文件,md5值相同,我们就认为它是相同的文件,md5值就是文件的“身份证”,其实百度也有这方面的应用,在百度搜索图片,点开图片后,有时候会出现“您还可以点击以下链接查看到这张图片:XXX网址”,原理也是一样,对文件进行md5。
废话少说,开始正文。
一、asp通过xml交互方式调用.Net程序实现文件md5
asp由于本身语言的限制,无法实现文件的md5,但是.net确可以,那是不是可以通过.net对文件进行md5,然后发送信息给asp接收,这样就可以做到asp的md5了呢,答案是肯定的。这里涉及到asp与.net程序间的交互,我以前写过一个asp的类:《asp处理xml数据的发送、接收类》,可以上我的百度空间看:http://hi.baidu.com/manbutianmi/blog/item/dec182fc6db36587b801a0f6.html,讲的是asp处理xml数据的发送与接收,可用于各种异构系统之间API接口间通讯。本文正好是这个类的一个应用。代码如下:
asp端代码

xmlcls.asp
<%
Rem 处理xml数据的发送、接收类
'--------------------------------------------------
'转载的时候必须保留此版权信息
'作者:walkman
'网址:手机主题网:http://www.shouji138.com
'版本:ver1.0
'--------------------------------------------------
Class XmlClass

Rem 变量定义
Private XmlDoc,XmlHttp
Private MessageCode,SysKey,XmlPath
Private m_GetXmlDoc,m_url
Private m_XmlDocAccept

Rem 初始化
Private Sub Class_Initialize()
   On Error Resume Next
   MessageCode = ""
   XmlPath = ""
   Set XmlDoc = Server.CreateObject("msxml2.FreeThreadedDOMDocument.3.0")
   XmlDoc.ASYNC = False
End Sub

Rem 销毁对象
Private Sub Class_Terminate()
   If IsObject(XmlDoc) Then Set XmlDoc = Nothing
   If IsObject(m_XmlDocAccept) Then Set m_XmlDocAccept = Nothing
   If IsObject(m_GetXmlDoc) Then Set m_GetXmlDoc = Nothing  
End Sub

'公共属性定义开始--------------------------
Rem 错误信息
Public Property Get Message()
   Message = MessageCode
End Property

Rem 发送xml的地址
Public Property Let URL(str)
   m_url = str
End Property
'公共属性定义结束--------------------------

'私有过程、方法开始--------------------------
Rem 加载xml
Private Sub LoadXmlData()
   If XmlPath <> "" Then
    If Not XmlDoc.Load(XmlPath) Then
     XmlDoc.LoadXml "<?xml version=""1.0"" encoding=""gb2312""?><root/>"
    End If
   Else
    XmlDoc.LoadXml "<?xml version=""1.0"" encoding=""gb2312""?><root/>"
   End If
End Sub

Rem 字符转化
Private Function AnsiToUnicode(ByVal str)
   Dim i, j, c, i1, i2, u, fs, f, p
   AnsiToUnicode = ""
   p = ""
   For i = 1 To Len(str)
    c = Mid(str, i, 1)
    j = AscW(c)
    If j < 0 Then
     j = j + 65536
    End If
    If j >= 0 And j <= 128 Then
     If p = "c" Then
      AnsiToUnicode = " " & AnsiToUnicode
      p = "e"
     End If
     AnsiToUnicode = AnsiToUnicode & c
    Else
     If p = "e" Then
      AnsiToUnicode = AnsiToUnicode & " "
      p = "c"
     End If
     AnsiToUnicode = AnsiToUnicode & ("&#" & j & ";")
    End If
   Next
End Function

Rem 字符转化
Private Function strAnsi2Unicode(asContents)
   Dim len1,i,varchar,varasc
   strAnsi2Unicode = ""
   len1=LenB(asContents)
   If len1=0 Then Exit Function
    For i=1 to len1
    varchar=MidB(asContents,i,1)
    varasc=AscB(varchar)
    If varasc > 127 Then
     If MidB(asContents,i+1,1)<>"" Then
      strAnsi2Unicode = strAnsi2Unicode & chr(ascw(midb(asContents,i+1,1) & varchar))
     End If
     i=i+1
    Else
     strAnsi2Unicode = strAnsi2Unicode & Chr(varasc)
    End If
   Next
End Function

Rem 往文件中追加字符
Private Sub WriteStringToFile(filename,str)
   On Error Resume Next
   Dim fs,ts
   Set fs= createobject("scripting.filesystemobject")
   If Not IsObject(fs) Then Exit Sub  
   Set ts=fs.OpenTextFile(Server.MapPath(filename),8,True)
   ts.writeline(str)
   ts.close
   Set ts=Nothing
   Set fs=Nothing
End Sub
'私有过程、方法结束--------------------------

'公共方法开始--------------------------

'''''''''''发送xml部分开始
Rem 从外部xml文件填充XmlDoc对象
Public Sub LoadXmlFromFile(path)
   XmlPath = Server.MapPath(path)
   LoadXmlData()
End Sub

Rem 用字符串填充XmlDoc对象
Public Sub LoadXmlFromString(str)
   XmlDoc.LoadXml str
End Sub

Rem 设置node的参数 如 NodeValue "appID",AppID,1,False
'--------------------------------------------------
'参数 :
'NodeName 节点名
'NodeText 值
'NodeType 保存类型 [text=0,cdata=1]
'blnEncode 是否编码 [true,false]
'--------------------------------------------------
Public Sub NodeValue(Byval NodeName,Byval NodeText,Byval NodeType ,Byval blnEncode)
   Dim ChildNode,CreateCDATASection
   NodeName = Lcase(NodeName)
   If XmlDoc.documentElement.selectSingleNode(NodeName) is nothing Then
    Set ChildNode = XmlDoc.documentElement.appendChild(XmlDoc.createNode(1,NodeName,""))
   Else
    Set ChildNode = XmlDoc.documentElement.selectSingleNode(NodeName)
   End If
   If blnEncode = True Then
    NodeText = AnsiToUnicode(NodeText)
   End If
   If NodeType = 1 Then
    ChildNode.Text = ""
    Set CreateCDATASection = XmlDoc.createCDATASection(Replace(NodeText,"]]>","]]&gt;"))
    ChildNode.appendChild(createCDATASection)
   Else
    ChildNode.Text = NodeText
   End If
End Sub

'--------------------------------------------------
'获取发送包XML中节点的值
'参数 :
'Str 节点名
'--------------------------------------------------
Public Property Get XmlNode(Byval Str)
   If XmlDoc.documentElement.selectSingleNode(Str) is Nothing Then
    XmlNode = "Null"
   Else
    XmlNode = XmlDoc.documentElement.selectSingleNode(Str).text
   End If
End Property

'--------------------------------------------------
'获取返回XML数据对象
'例:
'当GetXmlData不为NULL时,GetXmlData为XML对象
'--------------------------------------------------
Public Property Get GetXmlData()
   Set GetXmlData = m_GetXmlDoc
End Property

'--------------------------------------------------
'发送xml包
'--------------------------------------------------
Public Sub SendHttpData()
   Dim i,GetXmlDoc,LoadAppid
   Set Xmlhttp = Server.CreateObject("MSXML2.ServerXMLHTTP.3.0")
   Set GetXmlDoc = Server.CreateObject("msxml2.FreeThreadedDOMDocument.3.0") ' 返回xml包
    XmlHttp.Open "POST", m_url, false
    XmlHttp.SetRequestHeader "content-type", "text/xml"
    XmlHttp.Send XmlDoc
    'Response.Write strAnsi2Unicode(xmlhttp.responseBody)
    If GetXmlDoc.load(XmlHttp.responseXML) Then
     Set m_GetXmlDoc = GetXmlDoc
    Else
     MessageCode = "请求数据错误!"
     Exit Sub
    End If
   Set GetXmlDoc = Nothing
   Set XmlHttp = Nothing
End Sub

'--------------------------------------------------
'打印发送请求XML数据
'--------------------------------------------------
Public Sub PrintSendXmlData()
   Response.Clear
   Response.ContentType = "text/xml"
   Response.CharSet = "gb2312"
   Response.Expires = 0
   Response.Write "<?xml version=""1.0"" encoding=""gb2312""?>"&vbNewLine
   Response.Write XmlDoc.documentElement.XML
End Sub

'--------------------------------------------------
'打印返回XML数据
'--------------------------------------------------
Public Sub PrintGetXmlData()
 
   Response.Clear
   Response.ContentType = "text/xml"
   Response.CharSet = "gb2312"
   Response.Expires = 0
   If IsObject(m_GetXmlDoc) Then
    Response.Write "<?xml version=""1.0"" encoding=""gb2312""?>"&vbNewLine
    Response.Write m_GetXmlDoc.documentElement.XML
   Else
    Response.Write "<?xml version=""1.0"" encoding=""gb2312""?><root></root>"
   End If
End Sub

Rem 保存发送请求xml数据到文件,文件名为sendxml_日期.txt
Public Sub SaveSendXmlDataToFile()
   Dim filename,str
   filename = "sendxml_" & DateValue(now) & ".txt"
   str = ""
   str = str & ""& Now() & vbNewLine
   str = str & "---------------------------------------------"& vbNewLine
   str = str & "<?xml version=""1.0"" encoding=""gb2312""?>" & vbNewLine
   str = str & XmlDoc.documentElement.XML & vbNewLine
   str = str & "---------------------------------------------"& vbNewLine
   str = str & vbNewLine & vbNewLine & vbNewLine
   WriteStringToFile filename,str
End Sub

Rem 保存返回XML数据到文件,文件名为getxml_日期.txt
Public Sub SaveGetXmlDataToFile()
   Dim filename,str
   filename = "getxml_" & DateValue(now) & ".txt"
   str = ""
   str = str & ""& Now() & vbNewLine
   str = str & "---------------------------------------------"& vbNewLine
   If IsObject(m_GetXmlDoc) Then
    str = str & "<?xml version=""1.0"" encoding=""gb2312""?>" & vbNewLine
    str = str & m_GetXmlDoc.documentElement.XML
   Else
    str = str & "<?xml version=""1.0"" encoding=""gb2312""?>" & vbNewLine & "<root>" & vbNewLine & "</root>"
   End If
   str = str & vbNewLine
   str = str & "---------------------------------------------"& vbNewLine
   str = str & vbNewLine & vbNewLine & vbNewLine
   WriteStringToFile filename,str
End Sub

'--------------------------------------------------
'获取返回xml的节点信息
'XmlClassObj.GetSingleNode("//msg")
'--------------------------------------------------
Public Function GetSingleNode(nodestring)
   If IsObject(m_GetXmlDoc) Then
    GetSingleNode = m_GetXmlDoc.documentElement.selectSingleNode(nodestring).text
   Else
    GetSingleNode = ""
   End If
End Function
''''''''''''''''''发送xml部分结束

''''''''''''''''''接收xml部分开始
'--------------------------------------------------
'接收XML包,错误信息通过Message对象获取
'--------------------------------------------------
Public Function AcceptHttpData()
   Dim XMLdom
   Set XMLdom = Server.CreateObject("Microsoft.XMLDOM")
   XMLdom.Async = False
   XMLdom.Load(Request)
   If XMLdom.parseError.errorCode <> 0 Then
    MessageCode = "不能正确接收数据" & "Description: " & XMLdom.parseError.reason & "<br>Line: " & XMLdom.parseError.Line
    Set m_XmlDocAccept = Null
   Else
    Set m_XmlDocAccept = XMLdom
   End If
End Function

'--------------------------------------------------
'返回接收XML包节点信息
'XmlClassObj.GetSingleNode("//msg")
'--------------------------------------------------
Public Function AcceptSingleNode(nodestring)
   If IsObject(m_XmlDocAccept) Then
    AcceptSingleNode = m_XmlDocAccept.documentElement.selectSingleNode(nodestring).text
   Else
    AcceptSingleNode = ""
   End If
End Function

'--------------------------------------------------
'打印接收端接收到的XML数据
'--------------------------------------------------
Public Sub PrintAcceptXmlData()
   Response.Clear
   Response.ContentType = "text/xml"
   Response.CharSet = "gb2312"
   Response.Expires = 0
   If IsObject(m_XmlDocAccept) Then
    Response.Write "<?xml version=""1.0"" encoding=""gb2312""?>"&vbNewLine
    Response.Write m_XmlDocAccept.documentElement.XML
   Else
    Response.Write "<?xml version=""1.0"" encoding=""gb2312""?><root></root>"
   End If
End Sub

Rem 保存接收的XML包数据到文件,文件名为acceptxml_日期.txt
Public Sub SaveAcceptXmlDataToFile()
   Dim filename,str
   filename = "acceptxml_" & DateValue(now) & ".txt"
   str = ""
   str = str & ""& Now() & vbNewLine
   str = str & "---------------------------------------------"& vbNewLine
   If IsObject(m_XmlDocAccept) Then
    str = str & "<?xml version=""1.0"" encoding=""gb2312""?>" & vbNewLine
    str = str & m_XmlDocAccept.documentElement.XML
   Else
    str = str & "<?xml version=""1.0"" encoding=""gb2312""?>" & vbNewLine & "<root>" & vbNewLine & "</root>"
   End If
   str = str & vbNewLine
   str = str & "---------------------------------------------"& vbNewLine
   str = str & vbNewLine & vbNewLine & vbNewLine
   WriteStringToFile filename,str
End Sub

''''''''''''''''''接收xml部分结束

Rem 保存调试数据到文件,文件名为debugnote_日期.txt
Public Sub SaveDebugStringToFile(debugstr)
   Dim filename,str
   filename = "debugnote_" & DateValue(now) & ".txt"
   str = ""
   str = str & ""& Now() & vbNewLine
   str = str & "---------------------------------------------"& vbNewLine
   str = str & debugstr & vbNewLine
   str = str & "---------------------------------------------"
   str = str & vbNewLine & vbNewLine & vbNewLine
   WriteStringToFile filename,str
End Sub

'公共方法结束--------------------------

End Class
%>

filemd5fun.asp

<!--#Include File="xmlcls.asp"-->
<%
Rem 取得文件的md5,参数为文件名
Function GetFileMD5(filename)
Const Apisysno = "k8n6g2b0m1a6b0f6e8" '接口的Key值,防止被非法适用 接口应该保持一致
Dim XmlClassObj
Set XmlClassObj = new XmlClass '创建对象
XmlClassObj.LoadXmlFromString("<?xml version=""1.0"" encoding=""gb2312""?><root/>") '用xml字符填充XMLDOC对象,用来发送xml
XmlClassObj.URL = "http://www.shouji138.com/aspnet2/FileMD5.aspx" '设置响应的url,这里应该改成你的网址

Rem xml格式
Rem "<?xml version="1.0" encoding="gb2312"?>
Rem    <root>
Rem       <sysno></sysno>
Rem       <apiaction></apiaction>
Rem        <filename></filename>
Rem   </root>

XmlClassObj.NodeValue "sysno",Apisysno,0,False      '接口的Key值,防止被非法适用
XmlClassObj.NodeValue "apiaction","createfilemd5",0,False   '接口的响应动作,用于定义一个接口用于多种用途
XmlClassObj.NodeValue "filename",filename,0,False     '文件路径和文件名,用相对路径

'XmlClassObj.SaveSendXmlDataToFile()       '将发送的xml数据库包存入txt文件,用于调试之用
XmlClassObj.SendHttpData()         '发送xml数据
'XmlClassObj.SaveGetXmlDataToFile()       '保存接收到的xml数据

Rem 处理结果

Dim message,status
status = XmlClassObj.GetSingleNode("//status")    '显示状态,如果为OK则表示成功,否则有错误发生
message = XmlClassObj.GetSingleNode("//message")   '显示取到的MD5值,如果status不为OK,则message为错误信息
Set XmlClassObj = Nothing

If status = "OK" Then
   GetFileMD5 = message
Else
   GetFileMD5 = ""
End If  
End Function

%>

test.asp
<!--#Include File="filemd5fun.asp"-->

<% 
Response.Write "web.config的md5值是:" & GetFileMD5("web.config") & "<br />"
Response.Write "files/logo-yy.gif的md5值是:" & GetFileMD5("files/logo-yy.gif") & "<br />"
Response.Write "xmlcls.asp的md5值是:" & GetFileMD5("xmlcls.asp") & "<br />"
%>

.net端代码:
MD5.cs
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;

namespace Winsteps.FileMD5
{
    public class MD5
    {
        public static string md5_hash(string path)
        {
            try
            {
                FileStream get_file = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.Read);
                System.Security.Cryptography.MD5CryptoServiceProvider get_md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();
                byte[] hash_byte = get_md5.ComputeHash(get_file);
                string resule = System.BitConverter.ToString(hash_byte);
                resule = resule.Replace("-", "");
                return resule;
            }
            catch (Exception e)
            {
                return e.Message;
            }
        }
    }
}

FileMD5.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FileMD5.aspx.cs" Inherits="Winsteps.FileMD5.FileMD5" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>手机主题网:http://www.shouji138.com</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
   
    </div>
    </form>
</body>
</html>

FileMD5.aspx.cs

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

using System.Xml;
using System.Configuration;

namespace Winsteps.FileMD5
{
    public partial class FileMD5 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            string sysno = "11111";
            string status = "False";
            string message = "未指定的错误";
            string net2sysno = ConfigurationManager.AppSettings["sysno"];
            XmlDocument doc = new XmlDocument();
            try
            {
               
                doc.Load(Request.InputStream);
                sysno = doc.SelectSingleNode("//sysno").InnerText.Trim();
                if (net2sysno != sysno)
                {
                    message = "非法适用!";
                }
                else
                {
                    string filename = Server.MapPath(doc.SelectSingleNode("//filename").InnerText.Trim());
                    message = MD5.md5_hash(filename);
                    status = "OK";
                }

}
            catch(Exception ex)
            {
                message = ex.Message;
            }
            finally
            {
                if (doc != null)
                    doc = null;
            }
            Response.Clear(); //清楚html字符
            Response.ContentType = "text/xml";
            Response.Charset = "GB2312";//如果xml字符串中包含中文
            Response.Write("<?xml version=\"1.0\" encoding=\"GB2312\"?>");
            Response.Write("<root>");
            Response.Write("   <status>" + status + "</status>");
            Response.Write("   <message>" + message + "</message>");
            Response.Write("</root>");
            Response.End();

}
    }
}

Web.config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
    <add key="sysno" value="k8n6g2b0m1a6b0f6e8"></add>
</appSettings>
<system.web>
    <httpRuntime executionTimeout="3600" maxRequestLength="1048576"/>
    <compilation debug="true" defaultLanguage="c#" />
    <customErrors mode="Off" />
    <identity impersonate="true"/>
    <authentication mode="Forms">
      <forms name="forums" path="/" loginUrl="Login.aspx" protection="All" timeout="40">
      </forms>
    </authentication>
    <pages validateRequest="false"></pages>
    <globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" uiCulture="zh-CN"/>
</system.web>
</configuration>

web.config的sysno要跟filemd5fun.asp里面的Apisysno保持一致,具体应用时应该要把这个key改成你自己的值来保证安全。
演示地址:http://www.shouji138.com/aspnet2/filemd5.asp
代码虽然长,但是原理简单,asp发送xml数据给asp.net(xml中包含了要md5的文件名)->asp.net接收xml对文件进行md5->asp.net将结果通过xml返回给asp(xml中包含了获取到的md5值)->asp获取返回的xml,解析出md5值。
应用范围:
1. 在两个系统之间传送文件时,可以在传送前进行文件md5,传送后进行文件md5,检查两值是否相等,如果相等则表示在传送过程中没有被修改。
2. 做上传系统中,如果要求不能上传同文件的话,可以在上传之后的文件进行md5存入数据库中,这样下次上传同样文件,则md5会相同,拒绝上传。
3. 在搜索引擎、迅雷本b2b软件中,对文件md5,具有相同md5的文件被认为是相同文件,而不管文件名是否相同,可以从多个源来分享文件。
4. 其他应用。。。。。

二、asp通过COM组件实现md5(需要在服务器上注册组件)

注册一个asp的文件md5组件,下载地址:http://www.shouji138.com/aspnet2/files/aspmd5.rar

然后将PARmf.dll文件拷贝到服务器的c:\WINDOWS\system32目录,运行regsvr32 parmf.dll进行注册,重启IIS。

调用代码:
<%
Set DelphiASPObj = Server.CreateObject("PARmf.md5file")
   DelphiASPObj.in_path=Server.Mappath("Web.config")      '文件路径
   Response.Write "web.config的md5值是:" & DelphiASPObj.get_path_md5 & "<br />"
   Set DelphiASPObj=nothing
%>

三、两种方式获取文件md5的对比

第一种方法通过与asp.net程序交互xml数据来得到文件的md5,需要服务器支持asp.net,一般的虚拟主机都提供asp.net环境,但是价格高点;
第二种方法通过注册COM组件实现,需要有服务器的权限,对于拥有服务器的比较合适。
另外第一种方式的这种交互方法使得asp具有更大的灵活性,可以应用在2台不同的服务器上面进行数据交互,可广泛应用于各种异构平台。

四、下载地址

请到偶的小站,手机主题网查看演示和下载程序包
演示地址:http://www.shouji138.com/aspnet2/filemd5.asp
程序下载打包下载:http://www.shouji138.com/aspnet2/files/FileMD5.rar
asp的文件md5组件:http://www.shouji138.com/aspnet2/files/aspmd5.rar

时间: 2014-12-04

Asp获取文件md5值的相关文章

用asp获取文件md5值

网上asp加密字符的MD5很多,也很普遍,但是对文件进行md5的确很少,因为受到asp语言本身的限制.我们知道字符串的md5可以对明文进行不可逆的加密,从而保证数据储存或者传送的安全性.同样的,对文件进行md5加密也是为了保证在网络传送时不被修改和校验,另外还有一个用途就是在个人站点里面的应用:可以保证上传的图片或文件具有唯一性.原理是,上传到服务器之后,同时在数据库中记录该上传文件的md5值,这样在下次传同样文件的时候,可以通过查询数据库是否是相同的文件,md5值相同,我们就认为它是相同的文件

java 获取文件MD5值

Java 中,如何获取文件的MD5值呢?如何比较两个文件是否完全相同呢? Java代码   /**       * Get MD5 of one file:hex string,test OK!       *        * @param file       * @return       */       public static String getFileMD5(File file) {           if (!file.exists() || !file.isFile())

用c 获取文件MD5值的实现方法_C 语言

网上有 md5.c , md5.h, 但是里面只有 MD5Init(), MD5Update(), MD5Final() 三个函数, 只可以直接对字符进行操作, 而没有直接求文件md5的接口. 以下是我的实现, 可计算32位和16位的md5值. 复制代码 代码如下: #include <stdio.h>#include <stdlib.h>#include <string.h>#include "md5.h"char *MD5_file (char

VBS获取文件MD5值(无组件)_vbs

下面这个代码不需要组件一样可以获取MD5值. 复制代码 代码如下: Option ExplicitDim wiDim fileDim file_sizeDim file_attributesDim file_versionDim file_hashSet wi = CreateObject("WindowsInstaller.Installer")file = "111.exe"file_size = wi.FileSize(file)file_attributes

文件上传-webuploader传递文件MD5值的问题,高手速来。

问题描述 webuploader传递文件MD5值的问题,高手速来. 为什么 Uploader.Register方法报错,undifind,不能识别...求救,webuploader如何传递文件的MD5值....如果有JAVA大文件分片上传的DEMO,感激不尽,可以金钱交换..有意联系,QQ510080612 解决方案 http://download.csdn.net/download/chaoloveyou/587998http://download.csdn.net/download/u010

Python获取文件ssdeep值的方法_python

本文实例讲述了Python获取文件ssdeep值的方法,分享给大家供大家参考.具体方法如下: 首先,得到ssdeep值,需要先import ssdeep 在ubuntu上安装pyssdeep时 一直出错  后来发现apt-cache search "ssdeep"时把几个全apt-get install 上,但问题依旧. 后来下载到pyssdeep的源文件 ,tar zxvf pyssdeep.tar.zip 然后 apt-get install python-dev 然后 pytho

通过Nginx服务器获取大文件MD5值的配置方法_nginx

HTTP协议新增了Content-MD5 HTTP头,但是nginx并不支持这个功能,而且官方也明确表示不会增加这项功能,为什么呢?因为每次请求都需要读取整个文件来计算MD5值,以性能著称的nginx绝对不愿意干出违背软件宗旨的事情.但是有些应用中,需要验证文件的正确性,有些人通过下载当前文件,然后计算MD5值来比对当前文件是否正确.不仅仅浪费带宽资源也浪费了大把的时间.有需求就有解决方案,网友开发了file-md5模块.1. 下载模块file-md5 # cd /usr/local/src #

linux shell 获取文件md5的命令

获取文件的MD5值: $ md5sum linuxmint-12-gnome-dvd-32bit.iso|cut -d ' ' -f1 得到的MD5值 : ee3d6e2ca498bc7685b7f17cdb5f2eea 使用MD5校验iso文件: $ md5sum linuxmint-12-gnome-dvd-32bit.iso >linuxmint-12-gnome-dvd-32bit.md5 注意linuxmint-12-gnome-dvd-32bit.md5的内容是: ef3d6e2ca

asp获取文件或文件夹大小代码

大小财产用于返回的大小,以字节为单位,指定的文件或文件夹. 语法 FileObject.Size FolderObject.Size   例如File对象 <% dim fs,f set fs=Server.CreateObject("Scripting.FileSystemObject") set f=fs.GetFile("c:test.asp") Response.Write("The size of test.asp is: ")