[C#] C#通过微软系统类库Microsoft.VisualBasic进行繁体和简体转换 →→→→→进入此内容的聊天室

来自 , 2021-02-13, 写在 C#, 查看 118 次.
URL http://www.code666.cn/view/30082754
  1. using System;
  2. using System.IO;
  3. using System.Text;
  4. using Microsoft.VisualBasic;
  5.  
  6. namespace Rainsoft.Text
  7. {
  8.   /// <summary>
  9.   /// 字符串编码转换类
  10.   /// </summary>
  11.   public class StringEncoding
  12.   {
  13.     private StringEncoding()
  14.     {
  15.     }
  16.  
  17.     /// <summary>
  18.     /// 将字符串转换为简体中文
  19.     /// </summary>
  20.     public static string ToSimplifiedChinese(string s)
  21.     {
  22.       return Microsoft.VisualBasic.Strings.StrConv(s, VbStrConv.SimplifiedChinese, 0);
  23.     }
  24.  
  25.     /// <summary>
  26.     /// 将文件转换为简体中文
  27.     /// </summary>
  28.     /// <param name="filename">源文件名</param>
  29.     /// <param name="encoding">源文件字符编码</param>
  30.     /// <param name="outFilename">目标文件名</param>
  31.     /// <param name="outEncoding">目标文件字符编码</param>
  32.     /// <example>
  33.     /// <code>
  34.     /// ToSimplifiedChinese("big5.txt", Encoding.GetEncoding("big5"), "gb.txt", Encoding.GetEncoding("gb2312"));
  35.     /// ToSimplifiedChinese("big5.txt", Encoding.GetEncoding("big5"), "gb.txt", Encoding.UTF8);
  36.     /// </code>
  37.     /// </example>
  38.     public static void ToSimplifiedChinese(string filename, Encoding encoding, string outFilename, Encoding outEncoding)
  39.     {
  40.       StreamReader r = new StreamReader(filename, encoding);
  41.       StreamWriter w = new StreamWriter(outFilename, false, outEncoding);
  42.       try
  43.       {
  44.         w.Write(Strings.StrConv(r.ReadToEnd(), VbStrConv.SimplifiedChinese, 0));
  45.         w.Flush();
  46.       }
  47.       finally
  48.       {
  49.         w.Close();
  50.         r.Close();
  51.       }
  52.     }
  53.  
  54.     /// <summary>
  55.     /// 将字符串转换为繁体中文
  56.     /// </summary>
  57.     public static string ToTraditionalChinese(string s)
  58.     {
  59.       return Microsoft.VisualBasic.Strings.StrConv(s, VbStrConv.TraditionalChinese, 0);
  60.     }
  61.  
  62.     /// <summary>
  63.     /// 将文件转换为繁体中文
  64.     /// </summary>
  65.     /// <param name="filename">源文件名</param>
  66.     /// <param name="encoding">源文件字符编码</param>
  67.     /// <param name="outFilename">目标文件名</param>
  68.     /// <param name="outEncoding">目标文件字符编码</param>
  69.     /// <example>
  70.     /// <code>
  71.     /// ToTraditionalChinese("gb.txt", Encoding.GetEncoding("gb2312"), "gb.txt", Encoding.GetEncoding("big5"));
  72.     /// ToTraditionalChinese("gb.txt", Encoding.GetEncoding("gb2312"), "gb.txt", Encoding.UTF8);
  73.     /// </code>
  74.     /// </example>
  75.     public static void ToTraditionalChinese(string filename, Encoding encoding, string outFilename, Encoding outEncoding)
  76.     {
  77.       StreamReader r = new StreamReader(filename, encoding);
  78.       StreamWriter w = new StreamWriter(outFilename, false, outEncoding);
  79.       try
  80.       {
  81.         w.Write(Strings.StrConv(r.ReadToEnd(), VbStrConv.TraditionalChinese, 0));
  82.         w.Flush();
  83.       }
  84.       finally
  85.       {
  86.         w.Close();
  87.         r.Close();
  88.       }
  89.     }
  90.   }
  91. }
  92. //csharp/7804

回复 "C#通过微软系统类库Microsoft.VisualBasic进行繁体和简体转换"

这儿你可以回复上面这条便签

captcha