I will type the whole word with Persian keyboard:
Now I will loop through its letters and will create a new string like this:
string word = "";
for(int i=0; i < target.Length; i++)
word += target[i];
then I will print it, and here is the result:
It is the same as the source typed one.
Now I will re-typed the word, but when I reach a symbol I will change my keyboard to English:
again, I will loop and create a new string and will print it, here is the result:
as you can see there is a problem, the symbols part will hit in a reverse way! I should hit the # first, but the loop will hit the @ first! The symbols will hit reverse in loop, cuz they are typed with English keyboard layout.
so the for loop, will hit characters in the order as they typed, But I need to hit the characters in the order they will shown on screen.



