• 一个多语言网站的解放方案(asp+xml)


    新建两个存储语言项的xml文件,放到Languages目录下:
    zh-cn.xml
    代码:
    <?xml version="1.0" encoding="utf-8"?>
    <Languages>
        <aboutus>关于我们</aboutus>
        <product>产品展示</product>
    </Languages>
    english.xml
    代码:
    <?xml version="1.0" encoding="utf-8"?>
    <Languages>
        <aboutus>About us</aboutus>
        <product>Products</product>
    </Languages>
    公用函数(方法)Functions.asp,放到Comm目录下:
    代码:
    <%
    '-------------------
    '函数名:getLang();
    '参数Lang:当前语言;
    '参数Litem:设定的语言项;
    '示例:Call getLang("zh-cn","aboutus");
    'Author:Huerreson,huerreson@msn.com
    '-------------------
    Function getLang(ByVal Lang,Litem)
        Dim xmlDom
        If objCheck("Microsoft.XMLDOM") then  
            Set xmlDom = Server.CreateObject("Microsoft.XMLDOM")
        elseif objCheck("Microsoft.XMLDOM") then
            Set xmlDom = Server.CreateObject("MSXML2.DOMDocument")
        else
            Response.Write("服务器不支持'Microsoft.XMLDOM'及'MSXML2.DOMDocument',无法使用本功能")
        End if
        xmlDom.async = false
        xmlDom.load(Server.MapPath("Languages/"& Lang &".xml"))
        Response.Write(xmlDom.documentElement.selectSingleNode(Litem).text)
        Set xmlDoc = Nothing
        Set xmlDom = Nothing
    End Function
    '-------------------
    '函数名:objCheck();
    '参数ObjName:对象名称;
    '示例:Call objCheck("Microsoft.XMLDOM");
    'Author:Huerreson,huerreson@msn.com
    '-------------------
    Function objCheck(ObjName)
      on error resume next
      objCheck = false
      Set Obj = Server.CreateObject (ObjName)
      If -2147221005 <> Err then
        objCheck = true
      end if
      Set Obj = nothing
    End Function
    %>
    Demo:
    代码:
    <!--
    ==多语言版本解决方案==
    Author:Huerrseon,huerreson@msn.com
    -->
    <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
    <!--#include file="Comm/functions.asp" -->
    <style type="text/css">
    #NavMenu{border-bottom:1px dashed #000;}
    </style>
    <%
    Dim LangQuery
    LangQuery = lCase(Request.QueryString("lang"))
    If Not (IsNull(LangQuery) or LangQuery = "") Then
        LangQuery  = LangQuery
    else
        LangQuery = "default"
    End if
    %>
    <div id="NavMenu"><%Call getLang(LangQuery,"aboutus")%></div>
    <div id="SwitchLangBar">语言切换<a href="?lang=zh-cn">简体中文</a>--<a href="?lang=english">Englsih</a></div>

    申明

    非源创博文中的内容均收集自网上,若有侵权之处,请及时联络,我会在第一时间内删除.再次说声抱歉!!!

    博文欢迎转载,但请给出原文连接。

  • 相关阅读:
    树莓派的入网方式和远程连接
    数据结构与算法之递归(C++)
    c++中字符串输入注意的问题
    基于视觉的机械臂分拣(二)
    基于视觉的机械臂分拣(一)
    数据结构与算法之折半查找(C++)
    数据结构与算法之顺序查找(C++)
    ROS之USB摄像头识别二维码问题解决
    机械臂开发之正运动学
    利用vs pcl库将多个PCD文件合并成一张PCD地图
  • 原文地址:https://www.cnblogs.com/Athrun/p/1177151.html
Copyright © 2020-2023  润新知