PDA

View Full Version : سوال: الگوریتم تبدیل یونیکد به ایران سیستم



fazel-d
شنبه 28 مرداد 1391, 17:33 عصر
امکان تبدیل ایران سیستم به یونیکد بسیار آسونه!!!

و این راحتی کار به این خاطر هست که در یونیکد بین ع اول مثل عالم ، ع وسط مثل معلم و ع آخر مثل تابع در ایران سیستم به همون ع خونده می شه و کد یکسانی داره

حالا من می خوام که یونیکد رو به ایران سیستم تبدیل کنم
اما مسئله ای که وجود داره همین کاراکترها با جایگاه مختلف در کلمه هستند که یک حرف در جایگاه مختلف کد اسکی متفاوتی در ایران سیستم داره

حالا به نظر شما چطور می تونم این تبدیل رو انجام بدم بطوری که حرف مورد نظر قابل تشخیص در جایگاه مختلف باشه؟

FastCode
شنبه 28 مرداد 1391, 18:45 عصر
class CConv : IComparable{
public static ReadOnly CConv Nullchar =new (0,0,0,0,0);
char Unicode;//use this field for IComparable interface
byte StateN;//none
byte StateR;//left
byte StateL;//right
byte StateB;//both
GetChar(CConv left, Char Right){

bool L = (Left != NullCtar) && ( (State0 != StateL) == (Left.StateR != Left.State0));
bool R = (Right != NullChar) && ((State0 != StateR) == (Righ.StateL != Right.State0));
if(L && R) return StateB;
if(L) return StateL;
if(R) return StateR;
return State0;
}

SortedList<CCnonv> Dict;
Dict= new ....
Dict.Add(...);
...
...
...

به ازای همه کاراکتر های ورودی باید کاراکتر قبل و بعد رو حساب کنیم
و به تابع GetChar کاراکتر وسط بدیم