基本信息
源码名称:C# 简体/繁体转化工具源码下载
源码大小:0.03M
文件格式:.zip
开发语言:C#
更新时间:2016-10-10
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
繁簡轉換工具
繁簡轉換工具
public static class ChineseConverter
{
internal const int LOCALE_SYSTEM_DEFAULT = 0x0800;
internal const int LCMAP_SIMPLIFIED_CHINESE = 0x02000000;
internal const int LCMAP_TRADITIONAL_CHINESE = 0x04000000;
/// <summary>
/// 使用OS的kernel.dll做為簡繁轉換工具,只要有裝OS就可以使用,不用額外引用dll,但只能做逐字轉換,無法進行詞意的轉換
/// <para>所以無法將電腦轉成計算機</para>
/// </summary>
[DllImport("kernel32", CharSet = CharSet.Auto, SetLastError = true)]
internal static extern int LCMapString(int Locale, int dwMapFlags, string lpSrcStr, int cchSrc, [Out] string lpDestStr, int cchDest);
/// <summary>
/// 繁體轉簡體
/// </summary>
/// <param name="pSource">要轉換的繁體字:體</param>
/// <returns>轉換後的簡體字:體</returns>
public static string ToSimplified(string pSource)
{
String tTarget = new String(' ', pSource.Length);
int tReturn = LCMapString(LOCALE_SYSTEM_DEFAULT, LCMAP_SIMPLIFIED_CHINESE, pSource, pSource.Length, tTarget, pSource.Length);
return tTarget;
}
/// <summary>
/// 簡體轉繁體
/// </summary>
/// <param name="pSource">要轉換的繁體字:體</param>
/// <returns>轉換後的簡體字:體</returns>
public static string ToTraditional(string pSource)
{
String tTarget = new String(' ', pSource.Length);
int tReturn = LCMapString(LOCALE_SYSTEM_DEFAULT, LCMAP_TRADITIONAL_CHINESE, pSource, pSource.Length, tTarget, pSource.Length);
return tTarget;
}
///
/// 使用 Office Word (Microsoft.Office.Interop.Word) 進行轉換
///
public static string ConvertUsingWord(string argSource, bool argIsCht)
{
var doc = new Document();
doc.Content.Text = argSource;
doc.Content.TCSCConverter(
argIsCht
? WdTCSCConverterDirection.wdTCSCConverterDirectionTCSC
: WdTCSCConverterDirection.wdTCSCConverterDirectionSCTC, true, true);
var ret = doc.Content.Text;
object saveChanges = false;
object originalFormat = Missing.Value;
object routeDocument = Missing.Value;
doc.Close(ref saveChanges, ref originalFormat, ref routeDocument);
return ret;
}
}