Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 24182|Svar: 2

[Källa] Batchtranskodning av c#-versionen av Unicode-teckenuppsättningar till kinesiska tecken (ömsesidig konvertering)

[Kopiera länk]
Publicerad på 2015-09-07 10:57:18 | | |
Jag såg att många platser på internet använder tecken som /u4e2d/u56fd när man sänder kinesiska, vilket är Unicode-kodade tecken, och jag vill veta vad det specifika innehållet är, men det är inte lätt att se, så jag vill avkoda denna teckenuppsättning till vanliga tecken.
Först konverterade jag kodningsformatet via Encoding, och upptäckte att det inte fungerade, och jag kunde inte lösa det normalt, och sedan sökte jag efter liknande avkodningslösningar på Internet, som var genomförbara, men jag upptäckte att det var lite besvärligt att skriva, och om jag hade batcher med Unicode-tecken kunde jag inte mata ut dem direkt, men sedan tittade jag och tittade på dem, och till slut hittade jag två metoder för char-klasser: den ena är char. ConvertFromUtf32, säger kommentaren: Konvertera den angivna Unicode-kodbiten till en UTF-16-kodad sträng, är inte detta bara avkodning; En annan är char. ConvertToUtf32, kommentar: Denna metod är att konvertera UTF-16-kodade tecken på angivna positioner i strängen till Unicode-kodpunkter, ha, faktiskt är det för att omvandla vanliga tecken till Unicode-teckenuppsättningar.

  1. /// <summary>  
  2.         /// 把Unicode解码为普通文字  
  3.         /// </summary>  
  4.         /// <param name="unicodeString">要解码的Unicode字符集</param>  
  5.         /// <returns>解码后的字符串</returns>  
  6.         public static string ConvertToGB(string unicodeString)
  7.         {
  8.             string[] strArray = unicodeString.Split(new string[] { @"\u" }, StringSplitOptions.None);
  9.             string result = string.Empty;
  10.             for (int i = 0; i < strArray.Length; i++)
  11.             {
  12.                 if (strArray[i].Trim() == "" || strArray[i].Length < 2 || strArray.Length <= 1)
  13.                 {
  14.                     result += i == 0 ? strArray[i] : @"\u" + strArray[i];
  15.                     continue;
  16.                 }
  17.                 for (int j = strArray[i].Length > 4 ? 4 : strArray[i].Length; j >= 2; j--)
  18.                 {
  19.                     try
  20.                     {
  21.                         result += char.ConvertFromUtf32(Convert.ToInt32(strArray[i].Substring(0, j), 16)) + strArray[i].Substring(j);
  22.                         break;
  23.                     }
  24.                     catch
  25.                     {
  26.                         continue;
  27.                     }
  28.                 }
  29.             }
  30.             return result;
  31.         }

  32.         /// <summary>  
  33.         /// 把汉字字符转码为Unicode字符集  
  34.         /// </summary>  
  35.         /// <param name="strGB">要转码的字符</param>  
  36.         /// <returns>转码后的字符</returns>  
  37.         public static string ConvertToUnicode(string strGB)
  38.         {
  39.             char[] chs = strGB.ToCharArray();
  40.             string result = string.Empty;
  41.             foreach (char c in chs)
  42.             {
  43.                 result += @"\u" + char.ConvertToUtf32(c.ToString(), 0).ToString("x");
  44.             }
  45.             return result;
  46.         }
Kopiera koden






Föregående:JS, kinesiska tecken och Unicode-kodning utbyts Unicode-kryptering Unicode-dekryptering
Nästa:Hur gör jag portmappning på en Cisco-router?
Publicerad på 2016-02-19 23:12:53 |
Publicerad på 2022-11-12 13:53:27 |
Svara på inlägget för att uttrycka din tacksamhet
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com