c#、js、java常用语句收集【自用,方便查阅】

获取程序集名称(常用于读取配置文件):

System.Reflection.Assembly.GetExecutingAssembly().GetName().Name

 

解决远程测试Webservice时出现“测试窗体只能用于来自本地计算机的请求。 ”时的问题:

<webServices>
         
<protocols>
            
<add name="HttpSoap"/>
            
<add name="HttpPost"/>
            
<add name="HttpGet"/>
            
<add name="Documentation"/>
         
</protocols>
</webServices>

 

 

深拷贝的实现:

  /// <summary>
        
/// 深拷贝
        
/// </summary>
        
/// <returns>深度拷贝的对象</returns>
        public object DeepClone()
        {
            
//需要引用的命名空间
            //using System.Runtime.Serialization;
            //using System.Runtime.Serialization.Formatters.Binary;
            //using System.IO;
             BinaryFormatter Formatter = new BinaryFormatter(nullnew StreamingContext(StreamingContextStates.Clone));  
            MemoryStream stream 
= new MemoryStream();  
            Formatter.Serialize(stream, 
this);  
            stream.Position 
= 0;  
            
object clonedObj = Formatter.Deserialize(stream);  
            stream.Close();
            
return clonedObj; 
        }

 

 


 

//解决弹出层无法覆盖flash的问题,增加如下参数:
<param name="wmode" value="transparent" />

 

//获取整数的某位的值为0还是1

 

获取一个整形的某几位的话,就拿这个整形数字与一个将该几位置为一的整形数字进行按位与(&运算符)。在解析下位机传递的数据时,经常能用到(如果为了降低功耗,按位保存信息的话)。

比如:

0x01&0x02=0x00

0x01&0x03=0x01

另外,还可以使用BitArray这个类。

 

//利用反射获取对象的所有公共属性和值

        static string aValue = "";//获得对象的值
        /// <summary>
        
/// 利用反射获取对象所有的属性名和对应的值
        
/// </summary>
        
/// <typeparam name="T"></typeparam>
        
/// <param name="t">对象</param>
        public void PrintProperties<T>(T t)
        { 
            
if (t == null
            { 
return; }
            PropertyInfo[] properties 
= t.GetType().GetProperties(BindingFlags.Instance | BindingFlags.Public); 
            
if (properties.Length <= 0)
            { 
return; }
            
foreach (PropertyInfo item in properties) 
            { 
                
string name = item.Name; 
                
object value = item.GetValue(t, null); if (item.PropertyType.IsValueType || item.PropertyType.Name.StartsWith("String")) 
                {                     
                    aValue
+=name+":"+ value+"\r\n";
                    Console.WriteLine(
"Name:{0},Value:{1}",name,value);
                } 
                
else 
                { 
                    PrintProperties(value); 
                } 
            }
        }
        
#endregion

 

//让ListView 自动控制列宽(根据表头):

listView1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);

 

--还原备份的数据库

RESTORE DATABASE Northwind 
   
FROM DISK = 'D:\Program Files\Microsoft SQL Server\MSSQL\BACKUP\Northwind.bak'

 

 //检查计算机上是否已经安装某软件(用于制作安装程序时,先检查是否已安装此软件,如果安装,课提示用户是否先卸载此软件,然后再继续安装)

 

Windows中,已安装程序列表存储在注册表中,位置是:
LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\<ProductCode>
ProductCode的位置应该替换上工程的Product Code,样子是这样的(包括花括号):{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}。

 

 

 //JS获取url传递的值

function request(paras){    
var url = location.href;     
var paraString = url.substring(url.indexOf("?")+1,url.length).split("&");     
var paraObj = {}     
for (i=0; j=paraString[i]; i++){     
paraObj[j.substring(0,j.indexOf("=")).toLowerCase()] = j.substring(j.indexOf("=")+1,j.length);     
}     
var returnValue = paraObj[paras.toLowerCase()];     
if(typeof(returnValue)=="undefined"){     
return "";     
}else{     
return returnValue;    
}  
}  
//如你给出的地址可以这样  
var classid = request("classid");  

 

JS获取url参数的值:

function getQueryStringRegExp(name)
{
    var reg = new RegExp("(^|\\?|&)"+ name +"=([^&]*)(\\s|&|$)", "i");  
    if (reg.test(location.href)) return unescape(RegExp.$2.replace(/\+/g, " ")); return "";
};

如果url传递的值中有中文的话,需要先对location.href做decodeURl():

                /*
		*获取url传递的值(对url进行decodeURI之后)
		*/
  		function getQueryStringRegExp(name)
  		{
  		    var reg = new RegExp("(^|\\?|&)"+ name +"=([^&]*)(\\s|&|$)", "i");  
  		    if (reg.test(decodeURI(location.href))) return unescape(RegExp.$2.replace(/\+/g, " ")); return "";
  		};
  		    

  

  

 验证Email地址的合法性(java:)

    /**
     * @Title: isEmail
     * @Description:验证一个字符串是否是合法的Email地址
     * @author Dangzhang
     * @param email
     *            需要验证的Email
     * @return 返回true表示email地址合法,否则表示email地址不合法
     * @throws
     */
    public static boolean isEmail(String email)
    {
        boolean isMatched = false;
        // 电子邮件
        String check = "^[a-z0-9]([a-z0-9-_\\.]*[a-z0-9])*@([a-z0-9][a-z0-9-]{0,61}[a-z0-9]\\.){1,3}[a-z]{2,6}([\\.][a-z]{2,6})?$";
        Pattern regex = Pattern.compile(check);
        Matcher matcher = regex.matcher(email);
        isMatched = matcher.matches();
        return isMatched;
    }

  

  验证Email地址的合法性(javascript:)

    /*验证email地址的合法性*/
    function isEmail(obj){   
        //reg=/^\w{3,}@\w+(\.\w+)+$/;   
        reg=/^[a-z0-9]([a-z0-9-_\.]*[a-z0-9])*@([a-z0-9][a-z0-9-]{0,61}[a-z0-9]\.){1,3}[a-z]{2,6}([\.][a-z]{2,6})?$/;
        if(!reg.test(obj)){        
            alert("Please enter a correct email address!");   
            return false;
        }else{   
            return true;   
        }   

  

 JQuery获取/设置checkbox、radio等的值:

//radio得到的是单个对象,checkbox得到的可能是个数组。
//取值
taskTmp.alarmInterval=$("input[name='alarmInterval']:checked").val();

//设置值为当前值时选中该项
                    $("input[name='alarmInterval'][value="+taskTmp.alarmInterval+"]").attr("checked",'checked');
                    

 

验证是否是有效的ipv4的js方法:

/*验证IP地址的合法性(仅限IPv4)*/
          function isIP(obj){
              if (obj.length < 7)
              {
                  return false;
              }
              var lidx=obj.indexOf("255");
              if(-1!=lidx)
              {
                   // 如果包含255,则认为是错误的(包括广播地址)
                  return false;
              }
              //不能以网络号为结尾             
              lidx=obj.lastIndexOf(".0");
              if((obj.length-2)==lidx)
              {
                  //如果0在最后
                  return false;
              }

              //简单的不可用的IP地址的判断
            //一些简单的IP地址
              if((obj=="127.0.0.1")
                      ||(obj=="0.0.0.0")
                      ||(obj=="255.255.255.255")
                  )
              {

                  return false;
              }
              //去掉内网ip
              /*
               * 10.0.0.0~10.255.255.255
               * 172.16.0.0~172.31.255.255
               * 192.168.0.0~192.168.255.255
               * */
              if((obj.indexOf("10.")==0)                  
                      ||(obj.indexOf("172.16.")==0)
                      ||(obj.indexOf("172.17.")==0)
                      ||(obj.indexOf("172.18.")==0)
                      ||(obj.indexOf("172.19.")==0)
                      ||(obj.indexOf("172.20.")==0)
                      ||(obj.indexOf("172.21.")==0)
                      ||(obj.indexOf("172.22.")==0)
                      ||(obj.indexOf("172.23.")==0)
                      ||(obj.indexOf("172.24.")==0)
                      ||(obj.indexOf("172.25.")==0)
                      ||(obj.indexOf("172.26.")==0)
                      ||(obj.indexOf("172.27.")==0)
                      ||(obj.indexOf("172.28.")==0)
                      ||(obj.indexOf("172.29.")==0)
                      ||(obj.indexOf("172.30.")==0)
                      ||(obj.indexOf("172.31.")==0)
                      ||(obj.indexOf("192.168.")==0)
                  )
              {
                  //
                  return false;
              }
              
              //正则表达式判断
              reg=/^((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]\d)|\[1-9])(\.((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]\d)|\d)){3}$/;
              if(!reg.test(obj)){  
                  return false;
              }              
              else{   
                  return true;
              }
          } 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted on 2011-01-04 10:25  sixiiweb  阅读(884)  评论(1编辑  收藏  举报

导航