Ian手记

Ian笔记:

table 和 Div 嵌套布局时的问题

Ian 写道
如果table在外部控制框架,里边使用div浮动布局,会出现里边浮动撑破table,但是table的其他表格内容以外部table控制为准,出现了div的table单元格内容重叠现象。

 javaScript中的SendMail:

Ian 写道
<script  language="javascript"> 
function SendMail()
{
document.location="mailto:me@home.com;?subject=Feedback;
}
</script>
<a href="javascript:SendMail();"> Contact US </a>

 

Sql Server 挂起问题:

Ian 写道
在运行窗口输入regedit,打开注册表编辑器,在HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control \Session Manager中找到PendingFileRenameOperations,删除该键值(这个键值是安装程序暂挂项目,只要找到对应的应用程序清除掉就行了),关闭注册表编辑器。重新安装SQL Server 2000即可。

 

设为首页 加入收藏 问题:

Ian 写道
var strHref=window.location.href;
          var title = "XXXX - " + window.document.title;
         
          function addCookie() {  // 加入收藏
        if (document.all) {
            window.external.addFavorite(strHref, title);
        }
        else if (window.sidebar) {
        window.sidebar.addPanel(title,strHref, "");
        }
      }       
      function setHomepage(){  // 设为首页
          if (document.all){
               document.body.style.behavior = 'url(#default#homepage)';
              document.body.setHomePage(strHref);           
         }
         else if (window.sidebar) {
               if (window.netscape) {
                 try {
                    netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
                 }
                 catch (e) {
                    alert("该操作被浏览器拒绝,假如想启用该功能,请在地址栏内输入 about:config,然后将项 signed.applets.codebase_principal_support 值该为true");
                  }
              }
              var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);
              prefs.setCharPref('browser.startup.homepage',strHref);
         }
     }

 

 

网页中框架的使用:

Ian 写道
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>欢迎使用XXXX</title>

</head>
<frameset rows="120,0,0,*,0" border="0">
<frame name="banner" src="Banner.aspx" scrolling="no">
<frame name="softphone" src="CallCenterPhone.aspx" scrolling="no" noresize="noresize" frameborder="0" framespacing="0">
<frame name="calling" src="calling.aspx" scrolling="no" noresize="noresize" frameborder="0" framespacing="0">
<frameset cols="170,*">
<frame name="left" src="Left.aspx?Frame=left" scrolling="auto" style="border:solid 4px #c9c9c9;">
<frame name="main" src="OrderingFoodList.aspx?Frame=main">
</frameset>
<frame name="copyright" src="Copyright.htm" scrolling="no" noresize="noresize" target="contents">
<noframes>
<body>

<p>此网页使用了框架,但您的浏览器不支持框架。</p>

</body>
</noframes>
</frameset>

</html>
 

 

js中的方法扩展:

Ian 写道
<script type="text/javascript" language="javascript">
//为字符串扩展StartWith方法
String.prototype.StartWith = function(str)
{
if(str == null||str == ""||this.length == 0||str.length > this.length)
{
return false;
}
if(this.substr(0,str.length) == str)
{
return true;
}
else
{
return false;
}

return true;

}

</script>

 

 

 

js查找页面 Input 元素:

Ian 写道
<script type="text/javascript" language="javascript">

//查找 input 控件
function findInputControl(tagType,innerID)
{
var controls = document.getElementsByTagName("input");

for(i=0;i<controls.length;i++)
{
if(controls[i].type==tagType&&((controls[i].name.indexOf(innerID) > -1)|(controls[i].id.indexOf(innerID) > -1)))
{
return controls[i];
}

}
return null;
}
</script>
 

 javaDES加密:

Ian 写道
package com.ian.test;

import javax.crypto.Cipher;
import javax.crypto.SecretKey;
import javax.crypto.SecretKeyFactory;
import javax.crypto.spec.DESKeySpec;
import javax.crypto.spec.IvParameterSpec;

public class StringEncryption {

/**
* 转变的实例
*/
private static final String TRANSFORMATION = "DES/CBC/PKCS5Padding";
/**
* 转化过程中使用的 字符编码
*/
private static final String ENCODE = "UTF-8";
/**
* 内部密钥
*/
private static final String INNER_SECRET_Key = "11111111";
/**
* 加密法则
*/
private static final String ALGORITHM = "DES";


/**
* 将所给字节数组转化成对应的16进制字符串
* @param bts 需转化的字节数组
* @return 对应的字符串
*/
public static String toHexString(byte bts[]) {
StringBuffer hexString = new StringBuffer();
for (int i = 0; i < bts.length; i++) {
String plainText = Integer.toHexString(0xff & bts[i]);
if (plainText.length() < 2)
plainText = "0" + plainText;
hexString.append(plainText);
}

return hexString.toString();
}

/**
* 将所给16进制字符串转化为对应的字节数组
* @param str 需转化的字符串
* @return 对应的字节数组
*/
public static byte[] convertHexString(String str) {
byte digest[] = new byte[str.length() / 2];
for (int i = 0; i < digest.length; i++) {
String byteString = str.substring(2 * i, 2 * i + 2);
int byteValue = Integer.parseInt(byteString, 16);
digest[i] = (byte) byteValue;
}
return digest;
}

/**
* 加密字符串
* @param message 需加密的字符串
* @param key 加密密钥
* @return 加密后的字节数组
* @throws Exception
*/
private static byte[] encrypt(String message, String key) throws Exception {
Cipher cipher = Cipher.getInstance(TRANSFORMATION);

DESKeySpec desKeySpec = new DESKeySpec(key.getBytes(ENCODE));

SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(ALGORITHM);
SecretKey secretKey = keyFactory.generateSecret(desKeySpec);
IvParameterSpec iv = new IvParameterSpec(key.getBytes(ENCODE));
cipher.init(Cipher.ENCRYPT_MODE, secretKey, iv);

return cipher.doFinal(message.getBytes(ENCODE));
}

/**
* 解密字符串
* @param message 需解密的字符串
* @param key 解密密钥
* @return 解密后的字符串
* @throws Exception
*/
private static String decrypt(String message, String key) throws Exception {

byte[] bytesrc = convertHexString(message);
Cipher cipher = Cipher.getInstance(TRANSFORMATION);
DESKeySpec desKeySpec = new DESKeySpec(key.getBytes(ENCODE));
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(ALGORITHM);
SecretKey secretKey = keyFactory.generateSecret(desKeySpec);
IvParameterSpec iv = new IvParameterSpec(key.getBytes(ENCODE));

cipher.init(Cipher.DECRYPT_MODE, secretKey, iv);

byte[] retByte = cipher.doFinal(bytesrc);
return new String(retByte);
}

/**
* 消息加密 使用内部密钥(转化过程中使用的 字符编码 UTF-8)
* @param message 需要加密的消息
* @return 加密后的消息 加密过程中出现异常 返回 "";
*/
public static String encryptMessage(String message){
try {
String preStr = java.net.URLEncoder.encode(message, ENCODE).toLowerCase();
String rst = toHexString(encrypt(preStr, INNER_SECRET_Key)).toUpperCase();
return rst;
} catch (Exception e) {
// TODO: handle exception
return "";
}
}

/**
* 消息加密 使用自定义密钥(转化过程中使用的 字符编码 UTF-8)
* @param message 需要加密的消息
* @param key 加密密钥(自定义加密密钥长度应为8字节长度 字母+数字+键盘符号,Unicode编码字符除外)
* @return 加密后的消息 加密过程中出现异常 返回 "";
*/
public static String encryptMessage(String message,String key){
try {
String preStr = java.net.URLEncoder.encode(message, ENCODE).toLowerCase();
String rst = toHexString(encrypt(preStr, key)).toUpperCase();
return rst;
} catch (Exception e) {
// TODO: handle exception
return "";
}
}

/**
* 消息解密 使用内部密钥(转化过程中使用的 字符编码 UTF-8)
* @param message 需要解密的消息
* @return 解密后的消息 加密过程中出现异常 返回 "";
*/
public static String decryptMessage(String message){
try {
String rst = java.net.URLDecoder.decode(decrypt(message,INNER_SECRET_Key), ENCODE) ;
return rst;
} catch (Exception e) {
// TODO: handle exception
return "";
}
}

/**
* 消息解密 使用自定义密钥(转化过程中使用的 字符编码 UTF-8)
* @param message 需要解密的消息
* @param key 解密密钥(自定义加密密钥长度应为8字节长度 字母+数字+键盘符号,Unicode编码字符除外)
* @return 解密后的消息 加密过程中出现异常 返回 "";
*/
public static String decryptMessage(String message,String key){
try {
String rst = java.net.URLDecoder.decode(decrypt(message,key), ENCODE) ;
return rst;
} catch (Exception e) {
// TODO: handle exception
return "";
}
}


public static void main(String[] args)throws Exception {
String message = "这是要加密的消息!";
System.out.println("源消息:"+message);
System.out.println("---------------------------------");
System.out.println("使用内部密钥加密消息:");
String encryptStr1 = encryptMessage(message);
System.out.println("加密后消息:"+encryptStr1);
System.out.println("解密后消息:"+decryptMessage(encryptStr1));

System.out.println("---------------------------------");
String myKey = "!@#$$^%&";
System.out.println("使用自定义密钥加密消息:");
System.out.println("自定义密钥:"+myKey);
String encryptStr2 = encryptMessage(message,myKey);
System.out.println("加密后消息:"+encryptStr2);
System.out.println("解密后消息:"+decryptMessage(encryptStr2,myKey));
}

}

 

 

 

java加密.net解密
/*************** java 的加密 ***************/
public static String encrypt1(String key, String src) {
try {
SecretKey deskey = new SecretKeySpec(key.getBytes(), "DESede");
Cipher cipher = Cipher.getInstance("DESede");
cipher.init(Cipher.ENCRYPT_MODE, deskey);

BASE64Encoder encode = new BASE64Encoder();
return encode.encode(cipher.doFinal(src.getBytes()));
} catch (java.lang.Exception e) {
e.printStackTrace();
}
return null;
}

/*************** .net 解密 ***************/
/// <summary>
/// 3DES解密字符串
/// </summary>
/// <param name="key">解密密钥,要求为24位,和加密密钥相同</param>
/// <param name="src">待解密的字符串</param>
/// <returns>解密成功返回解密后的字符串,失败返回null</returns>
public static string Decrypt(string key, string src)
{
TripleDESCryptoServiceProvider DES = new TripleDESCryptoServiceProvider();

DES.Key = ASCIIEncoding.ASCII.GetBytes(key);
DES.Mode = CipherMode.ECB;
DES.Padding = System.Security.Cryptography.PaddingMode.PKCS7;

ICryptoTransform DESDecrypt = DES.CreateDecryptor();

string result = null;
try
{
byte[] Buffer = Convert.FromBase64String(src);
result = Encoding.Default.GetString(DESDecrypt.TransformFinalBlock(Buffer, 0, Buffer.Length));
}
catch (Exception ex)
{
result = null;
}
return result;
}


/***************************************************/
String preStr = java.net.URLEncoder.encode(message, ENCODE);
String rstStr = java.net.URLDecoder.decode(message, ENCODE) ;

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值