這篇文章可能比代碼更理論。用文本表替換字符與十六進制
我想知道是否有(相對)simple
方式來使用文本表(基本上是一個字符數組)並根據它們的值替換字符串中的字符。
讓我詳細說明。
比方說,我們有這樣的兩個線路表:
table[0x0] = new char[] {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p'};
table[0x1] = new char[] {'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', ']', ',', '/', '.', '~', '&'};
每個陣列有16名成員,0-F十六進制。
假設我們有一個字符串「hello」轉換爲十六進制(68 65 6C 6C 6F)。我想取這些十六進制數字,並將它們映射到上表中定義的新位置。
所以,「你好」就現在這個樣子:
07 04 0B 0B 0E
我可以將字符串很容易地轉換成一個數組,但我卡在下一步該怎麼做。我覺得foreach循環會做到這一點,但它確切的內容我還不知道。
有沒有簡單的方法來做到這一點?它似乎不應該太難,但我不太清楚如何去做。
非常感謝您的幫助!
我認爲你是廁所國王爲'IndexOf'方法。 – phoog
你使用C#4嗎? –
@JonathonReinhart是的。 –