這個類主要解決在類型轉(zhuǎn)換時,如果直接使用類型轉(zhuǎn)換函數(shù),會因為變量為空或者格式不對而導致程序報錯,而這種報錯在大多數(shù)情況下是允許的.例如要轉(zhuǎn)換一個字符串變量為數(shù)字,如果變量為空,則一般需要自動返回0.
另外一個重要功能就是封裝變量格式化操作,可以保持整個網(wǎng)站的輸出格式統(tǒng)一,例如時間格式,貨幣格式等等. 日期和貨幣格式化的時候,極易遇到因空值報錯的情況,一般都不得不寫個預判斷空值的邏輯,再格式化變量. 使用這個類負責類型轉(zhuǎn)換和格式化輸出后,就不用操心這些瑣碎的細節(jié)了,可以讓編程的心情得到大大改善啊.
還有些其他格式化功能,也加了進去,例如Convert.ToPer()是用來轉(zhuǎn)換數(shù)字成百分數(shù),Convert.FirstUppercase()用來做首字母大寫...... 你可以根據(jù)自己的需要,隨時擴展這個類,不要忘記了和大家分享哦.
有些基本的函數(shù),如果隨便寫一寫,基本可以湊合著用,但是遇到特殊情況,就要重新改寫.比如我寫的Convert.ToInt()方法,將變量轉(zhuǎn)換為Integer. 最基本的操作,是判斷一下是否為空,不為空就直接用Cint()就可以了. 但是遇到變量超出了范圍,又得判斷是否在Integer范圍內(nèi),所以又寫了一個私有方法IsOverflowInteger(),用于判斷變量值是否為某一個范圍內(nèi)的數(shù)字.經(jīng)過這樣的處理,相信基本可以處理所有的情況了.
所以我想,Convert類中的已有方法還是會有不少需要改善的,大家如果有更好更完善的函數(shù)請發(fā)上來分享,讓它形成ASP中最標準的變量處理的類,再不用依賴ASP中那些有限的功能了.
如下列舉一些比較主要的方法,具體細節(jié)請看代碼.
類型判斷:
Convert.IsInteger(ByVal Value) 判斷是否整數(shù),只允許0~9和-號
Convert.IsInt(ByVal Value) 判斷是否int型,其下類似,不用解釋了.
Convert.IsLng(ByVal Value)
Convert.IsDecimal(ByVal Value)
Convert.IsSng(ByVal Value)
Convert.IsDbl(ByVal Value)
Convert.IsCur(ByVal Value)
Convert.IsBln(ByVal Value)
Convert.IsDat(ByVal Value)
Convert.IsArr(ByVal Value)
類型轉(zhuǎn)換:
Convert.ToStr(ByVal Value)
Convert.ToInt(ByVal Value)
Convert.ToLng(ByVal Value)
Convert.ToSng(ByVal Value)
Convert.ToDbl(ByVal Value)
Convert.ToBln(ByVal Value)
Convert.ToCur(ByVal Value)
Convert.ToDat(ByVal Value)
格式化:
Convert.FormatDat(ByVal Value, ByVal vStyle) 日期格式化
Convert.FormatCur(ByVal Value,ByVal vDecimal) 貨幣格式化
Convert.FormatNum(ByVal Value,ByVal vDecimal) 數(shù)字格式化
其他格式化:
Convert.ToPer(Byval value,Byval value0) 百分數(shù),帶%
Convert.FirstUppercase(ByVal value) 首字母大寫
Convert.SafeSql(ByVal value) 替換sql中的'為''
代碼如下: (我不會插入代碼,不知道CSDN是怎么操作的,點插入代碼就是一個<textarea>,而不是可以折疊代碼的風格,向了解的朋友請教.)
復制代碼