方法一已經親測,使用正常,方法二貌似不能用。
方法一
/// <summary>
/// 中文字符工具類
/// </summary>
public static class ChineseStringUtility {
private const int LOCALE_SYSTEM_DEFAULT = 0x0800;
private const int LCMAP_SIMPLIFIED_CHINESE = 0x02000000;
private const int LCMAP_TRADITIONAL_CHINESE = 0x04000000;
[DllImport("kernel32", CharSet = CharSet.Auto, SetLastError = true)]
private static extern int LCMapString(int Locale, int dwMapFlags, string lpSrcStr, int cchSrc, [Out] string lpDestStr, int cchDest);
/// <summary>
/// 將字符轉換成簡體中文
/// </summary>
/// <param name="source">輸入要轉換的字符串</param>
/// <returns>轉換完成后的字符串</returns>
public static string ToSimplified(string source) {
String target = new String(' ', source.Length);
int ret = LCMapString(LOCALE_SYSTEM_DEFAULT, LCMAP_SIMPLIFIED_CHINESE, source, source.Length, target, source.Length);
return target;
}
/// <summary>
/// 將字符轉換為繁體中文
/// </summary>
/// <param name="source">輸入要轉換的字符串</param>
/// <returns>轉換完成后的字符串</returns>
public static string ToTraditional(string source) {
String target = new String(' ', source.Length);
int ret = LCMapString(LOCALE_SYSTEM_DEFAULT, LCMAP_TRADITIONAL_CHINESE, source, source.Length, target, source.Length);
return target;
}
}
方法二
這東西雖然簡單,但也不失為經典的類庫,個人而言,就非常喜歡這個類庫。
用文字記錄下來吧,留個記念吧
在vs中,有一個經典的Microsoft.VisualBasic.dll的VB類庫,根據官方的描述:
它能提供對許多 .NET Framework 類的簡單直觀的訪問,使您能夠編寫可與計算機、應用程序、設置、資源等交互的操作及方法代碼。
這次,寫一個比較經典的東西,簡體字轉繁體字的操作方法,要進行操作,先引用類庫.
我們可以在項目中引用Microsoft.VisualBasic.dll就可以了
實現簡體繁體轉換方法:
Microsoft.VisualBasic.Strings.StrConv(string str, VbStrConv Conversion, int LocaleID);
簡繁轉換,只是枚舉值不一樣而以
簡體轉繁體:Microsoft.VisualBasic.Strings.StrConv(string str, VbStrConv.TraditionalChinese,0)
繁體轉簡體:Microsoft.VisualBasic.Strings.StrConv(string str VbStrConv.SimplifiedChinese,0)
Str: 要轉換的 String 表達式。
Conversion: Microsoft.VisualBasic.VbStrConv。指定要執行的轉換類型的枚舉值。
LocaleID: LocaleID 值(如果與系統 LocaleID 值不同)。(系統 LocaleID 值為默認值。)
實際使用怎樣?那么我們做一個測試
class Program
{
static void Main(string[] args)
{
Console.Write(Microsoft.VisualBasic.
Strings.StrConv("博客園",
Microsoft.VisualBasic.VbStrConv.TraditionalChinese, 0));
Console.Read();
}
}
轉載自:http://blog.csdn.net/weiqian000/article/details/5565415