簡體   English   中英

Unicode到ASCII以及umlats的字符轉換

[英]Unicode to ASCII with character translations for umlats

我有一個客戶端,它發送unicode輸入文件,並且只要求返回ASCII編碼的文件-為什么不重要。

有誰知道將unicode字符串轉換為與ASCII字符串最接近的例程的例程嗎? 我正在尋找將常見的Unicode字符(如“ä”)替換為最佳的ASCII表示形式。

例如:'ä'->'a'

數據駐留在SQL Server中,但是我也可以作為下游機制或CLR過程在C#中工作。

只需遍歷字符串即可。 為每個字符進行切換:

switch(inputCharacter)
{
    case 'ä':
      outputString = "ae";
      break;
    case 'ö':
      outputString = "oe";
      break;
...

(這些翻譯僅在德語和ASCII中通用)

然后將所有outputString與StringBuilder組合。

我認為您的意思是將ASCII擴展為ASCII
只是一個簡單的字典

Dictionary<char, char> trans = new Dictionary<char, char>() {...}  
StringBuilder sb = new StringBuilder();
foreach (char c in string.ToCharArray)
{
     if((Int)c <= 127) 
         sb.Append(c);
     else
         sbAppend(trans[c]);
}
string ascii = sb.ToString();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM