作過VB開發的都知道,有一些VB裏面的好的函數在.NET裏面都沒有,而Microsoft.VisualBasic.dll卻給咱們提供使用這些函數的功能(沒用過VB的這些功能同樣可使用,大同小異而已)函數
今天這裏主要講兩個:一個是繁簡轉換,另外一個是計算時間差,相信你們都有方法實現這兩個功能,而我今天講的倒是隻各需一句代碼就實現這兩個功能!字體
首先須要引用Microsoft.VisualBasic.dll,廢話很少說直接上代碼編碼
using Microsoft.VisualBasic; string str="悲夢"; //簡體轉繁體 str=Strings.StrConv(str, VbStrConv.TraditionalChinese, 1033); //繁體轉簡體 str=Strings.StrConv(str, VbStrConv.SimplifiedChinese, 1033);
String.StrConv 的說明:spa
第一個參數是待轉換的字符串;.net
第二個參數是欲轉換的字體的枚舉值;code
第三個參數是文字轉換後,最後對應的編碼格式(LocaleID);blog
1028 繁體中文
1033 ASCII
2052 簡體中文
為何無論繁體轉簡體仍是簡體轉繁體我都用 1033 呢?
首先,要先知道,有些簡體中文的編碼值是在繁體中文中對應不到任何字的。此時,顯示的字就會是 "?" 號。
由於 2052 的 「 國] 已是簡體字了,轉換到繁體時,恰好其編碼對應不到1028 的編碼,所以會是問號。
最好的方式,是以 en-US(美國) 做爲編碼格式。當以 en-US 做爲最後的編碼格式後,又遇到亞洲字時,就會以 unicode 做爲儲存編碼格式。此時恰好與 .net 的 string 儲存格式相同。這樣就解決了問題!
所以,當咱們在作繁簡轉換時,請將第三個參數都設成 1033unicode
相信你們都有計算兩個時間的時間差,有多是計算相差的天數、小時、分鐘、秒,這些咱們均可以經過一句代碼來實現,先上代碼開發
using Microsoft.VisualBasic; //能夠獲得dt=50 long dt = DateAndTime.DateDiff(DateInterval.Hour, DateTime.Now, DateTime.Now.AddHours(50));
DateAndTime.DateDiff說明:
第一個參數是須要獲得的時間差的形式的枚舉值;能夠是天數,小時,分鐘,秒數等
第二個參數就是減的時間值;
第三個參數就是被減的時間值;
以上兩個功能看起來都很簡單,可是若是不借助Microsoft.VisualBasic.dll的話實現起來仍是挺麻煩的,用以上的方法實現起來既方便又準確!你們以爲好的話,推薦一下哦!字符串