نمایش نتایج 1 تا 23 از 23

نام تاپیک: مشکل مرتب سازی با حروف ه و ک

  1. #1
    کاربر دائمی
    تاریخ عضویت
    آبان 1387
    محل زندگی
    Iran
    پست
    1,338

    مشکل مرتب سازی با حروف ه و ک

    سلام. من در یکی از جداول عناوین منو رو در نگهداری می کنم، کاربر هم اصرار داره این عناوین مرتب باشند مثلاً: ویزا هتل من order by رو بر اساس Title نوشتم ولی متوجه شدم در بعضی مواقع مرتب سازی درست نیست مثلاً کلماتی که با ک شروع می شدن بر اساس مرتب سازی صحیح قرار نمی گرفتن. تا این لینک رو پیدا کردم و با کمک پست 13 اومدم همه ک ها رو با ک عربی تعویض کردم و مشکل ک حل شد،گرچه همین هم به نظر شیوه ایده آلی نمی رسه. https://barnamenevis.org/showthread.php?2664 ولی حالا با همون ویزا و هتل مشکل دارم که نمی دونم ایراد از و هست یا ه حتی زبان سیستم رو هم به عربی تغییر دادم و این کلمات رو در نات پد زدم و در دیتابیس کپی کردم بازم نتیجه نداد.

    ولی خیلی جالبه یه صفحه جستجو هم دارم که وقتی همین دو کلمه ویزا، هتل رو سرچ می زنم در نتیجه می یارتشون.
    لطفاً راهنمایی کنید.

  2. #2
    مدیر بخش آواتار amirzazadeh
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تبريز
    پست
    1,948

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    سلام
    دي ال ال مربوط به صفحه كليد رو با نوع عربي در حالت safe mode عوض كنيد مشكل برطرف ميشه.(داخل پوشه \WINDOWS\system32) البته همه حروف "ی" فارسي هم بايد با " ي " عربي جايگزين كنيد.
    اينم فايلdll
    فایل های ضمیمه فایل های ضمیمه

    DON'T START;OTHERWISE DON'T STOP
    .................................................
    قوانين سايت

  3. #3
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    مشکل مرتب سازی با حروف ه و ک

    من تا به حال در مرتب سازی با حرف ه مشکل نداشتم .
    یک راه دیگه هم که میتونم پیشنهاد کنم که به جای DLL میشه استفاده کرد اینه که در تمام فرمهایی که برای ورود اطلاعات استفاده میکنید یک کد برای کنترل کاراکترهای ورودی بنویسید که کلیه حروف ک و ی رو به فارسی یا به عربی تبدیل کنه و اطلاعات یکدست بشه .

  4. #4
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    میتونید از این کد به عنوان تابع استفاده کنید

    Public Function KafYa(Key As Integer) As Integer
    If Key = 1740 Or Key = 1609 Then
    KafYa = 1610
    ElseIf Key = 1603 Then
    KafYa = 1705
    ElseIf Key = 8204 Then
    KafYa = 32
    Else
    KafYa = Key
    End If
    End Function


  5. #5
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    ضمنا در صورتی که با ه مشکل دارین میتونین از این کد استفاده کنین .کد اسکی 1728 و 1577 رو به 1607 تبدیل کنید که کد اسکی ه فارسیه.
    جالبه تا به حال به این مورد بر خورد نداشتم .

  6. #6
    کاربر دائمی
    تاریخ عضویت
    آبان 1387
    محل زندگی
    Iran
    پست
    1,338

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    نقل قول نوشته شده توسط amirzazadeh مشاهده تاپیک
    سلام
    دي ال ال مربوط به صفحه كليد رو با نوع عربي در حالت safe mode عوض كنيد مشكل برطرف ميشه.(داخل پوشه \WINDOWS\system32) البته همه حروف "ی" فارسي هم بايد با " ي " عربي جايگزين كنيد.
    اينم فايلdll
    هر چی سعی کردم در پوشه System32 اجازه کپی نداد با اینکه با یوزر Administrator وارد شده بودم ولی فردا سر کار امتحان می کنم و نتیجه رو می گم.

    نقل قول نوشته شده توسط Rasool-GH مشاهده تاپیک
    میتونید از این کد به عنوان تابع استفاده کنید

    Public Function KafYa(Key As Integer) As Integer
    If Key = 1740 Or Key = 1609 Then
    KafYa = 1610
    ElseIf Key = 1603 Then
    KafYa = 1705
    ElseIf Key = 8204 Then
    KafYa = 32
    Else
    KafYa = Key
    End If
    End Function

    با روش شما متوجه نشدم چطور به فرض کلمه مورد نظر رو در تکست باکس وارد می کنیم کد حروفش رو باید به دست بیاریم و با کد مورد نظر خودمون جایگزین کنیم.
    شاید در ویندوز فرم منظور شما بوده باشه.
    من ویندوز فرم کار نمی کنم، وب اپلیکیشن کار می کنم، و در وب اپلیکیشن هم تا جایی که اطلاع دارم فقط با استفاده از جاوااسکریپت میشه کد حروف تایپ شده رو گرفت نه به صورت سرور ساید.
    بازم بیشتر در موردش تحقیق می کنم اگه به نتیجه برسم اعلام می کنم.

  7. #7
    مدیر بخش آواتار amirzazadeh
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تبريز
    پست
    1,948

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    نقل قول نوشته شده توسط bftarane مشاهده تاپیک
    هر چی سعی کردم در پوشه System32 اجازه کپی نداد با اینکه با یوزر Administrator وارد شده بودم ولی فردا سر کار امتحان می کنم و نتیجه رو می گم
    .
    براي ابن كار موقع بالا آمدن ويندوز كليد F8 يا ‍CTL+F8 رو فشار بديد و از صفحه بوت گزينه SAFE MODE رو انتخاب كنيد.در اين حالت ويندوز اجازه جايگزيني dll رو ميده.

    DON'T START;OTHERWISE DON'T STOP
    .................................................
    قوانين سايت

  8. #8
    کاربر دائمی
    تاریخ عضویت
    آبان 1387
    محل زندگی
    Iran
    پست
    1,338

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    بله با Safe mode کار کرده بودم.
    متوجه شدم این dll که گذاشتید در ویندوز xp در حالت Safe mode کپی میشه ولی در سون نه.
    ولی به هر حال در سیستم همکارم (xp) که کپی کردم و تست کردم مشکل حل نشد.
    این لینک هم نتیجه ای نداد
    http://fa.komeil.com/blog/chortkeh-p...-dll-windows-7

    ولی احتمال می دم اگه بگردم و نسخه مناسب این Dll رو بتونم پیدا کنم مشکل رفع بشه. چون تا جایی که می دونم نسخه درست این Dll باید باعث بشه وقتی Shift و فاصله رو باهم می گیریم به جای فاصله کامل نیم فاصله بیفته ولی تست کردم این اتفاق نیفتاد.
    باز سر فرصت رو این قضیه کار می کنم در صورتی که نتیجه گرفتم می گم.

  9. #9
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    بله منظورم فرم بود . در فرم با این پروسه کاملا جلوی ورود کاراکترهای غیر مجاز رو گرفتم و جدول از لحاظ کاراکترهای فارسی عربی یکسان هست
    در این مورد هم شما میتونین همین پروسه رو طی کنید . چون شما به هر حال این باگ رو خواهید داشت که اگه با سیستمی فاقد Dll مورد نظرتون بخواین کار کنین مشکل باقیست .

  10. #10
    کاربر دائمی
    تاریخ عضویت
    آبان 1387
    محل زندگی
    Iran
    پست
    1,338

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    چون شما به هر حال این باگ رو خواهید داشت که اگه با سیستمی فاقد Dll مورد نظرتون بخواین کار کنین مشکل باقیست .
    بله. دقیقاً قبل از اینکه پستتون رو بخونم داشتم به همین قضیه فکر می کردم، پس اون Dll نمی تونه راه حل مشکل باشه.
    سوال من در این قسمت از کد شماست
    Public Function KafYa(Key As Integer) As Integer

    من نمی دونم شما اون key رو چطور از کلمه ای که کاربر تایپ می کنه استخراج می کنید و فکر هم نمی کنم در وب اپلیکیشن بشه همچین کاری انجام داد.
    ولی این کار رو می تونم انجام بدم
    private string toArabic(string SQLstr)    {
    SQLstr = SQLstr.Replace(
    "ی", "ي");
    SQLstr = SQLstr.Replace(
    "
    ک
    ", "
    ك
    ");


    return SQLstr.Trim();
    }

    الأن فقط نمی دونم برای و و ه نمی دونم معادل حرف عربی رو از کجا بیارم.
    دیگه اینکه

    من اگه بخوام اینا رو به عربی تبدیل کنم هم باز راه درستی نیست. فرضاً من نمی خوام اگه معادل واو فارسی واو همزه دار عربی باشه
    ویزا به این شکل در دیتابیسم درج بشه ؤيزا یا نمی خوام ه به صورت ه دو نقطه دار در دیتابیسم درج بشه.

    و یه سوال دیگه در این لینک
    http://office.microsoft.com/en-001/a...005188128.aspx
    گفته شده
    Some languages that were once listed separately are now included in the General option
    که داره میگه زبانهایی مثل فارسی، ... در همون General نهفته هستند. دیتابیسم رو هم که چک کردم روی همون General بود، یعنی در واقع الآن باید تشخیص بده که دیگه به فارسی مرتب کنه ولی چرا تشخیص نمیده و میره به عربی مرتب می کنه؟
    ممنون. در هر صورت فکر کنم قضیه کمی برام روشن تر شده ولی هنوز گیجم.
    آخرین ویرایش به وسیله bftarane : دوشنبه 10 شهریور 1393 در 23:12 عصر

  11. #11
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    سلام
    اگه وقت کنم سعی میکنم یک نمونه براتون اماده کنم . روند به این شکله که در فرم از واقعه on key press استفاده میشه . یعنی هر کلیدی که کاربر فشار میده اول به تابع میره بررسی میشه و در صورتی که هر کدوم از موارد مورد نظر باشه کد اصلاح شده برمیگرده . این بهترین حالته . حالا اگه فیلد باند شده نباشه میتونید یک تابع یا اسکریپ بنویسید که قبل از اینکه مقادیر رو ذخیره کنه کلیه کاراکترهارو بررسی کنه و کاراکترهای صحیح رو جایگزین کنه . متاسفانه با اسکریپ های وب اشنایی ندارم .
    ضمنا همه کاراکترها به فارسی تبدیل میشه . فقط انحصارا از ی عربی استفاده کردم چون ی فارسی در بعضی از فونتها به صورت چسبان نیست .

  12. #12
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    فکر کنم این نمونه واضح باشه
    تو فیلد اول هر کاراکتری رو وارد کنید کد اسکی رو میتونید ببینید
    فایل های ضمیمه فایل های ضمیمه

  13. #13
    کاربر دائمی
    تاریخ عضویت
    آبان 1387
    محل زندگی
    Iran
    پست
    1,338

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    https://barnamenevis.org/showthread.php?467138

    ممنون. من برنامه تون رو تست کردم به هر دلیلی هر کاراکتری که وارد کردم هیچ نتیجه ای نشون داده نشد.

    مشکل من دقیقاً مسئله ای هست که در تاپیک زیر مطرح شده
    http://elahee.ir/30993-b7ce082ae7a43...ee545a6-8.html
    مشکل حرف ی و ک در اینترنت خیلی مطرح شده و با همون replace حل میشه ولی مشکل (واو) و (ه) ظاهراً حل شدنی نیست.

    پست 14 این لینک هم دلیل این مشکل رو توضیح میده.
    https://barnamenevis.org/showthread.php?177273
    من کد اسکی انواع واو و ه رو از کدوم منبع معتبر می تونم به دست بیارم؟ یه تست کردم مثلاً در یک سایت یه کد اسکی بهم داد ولی در سایت دیگه همون کد رو که می زنم یه حرف چینی ژاپنی بهم میده.
    و ظاهراً اکسس می یاد و بر اساس عربی مرتب سازی رو انجام میده. (مطمئن نیستم)
    آخرین ویرایش به وسیله bftarane : سه شنبه 11 شهریور 1393 در 11:35 صبح

  14. #14
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    همین نمونه ای که گذاشتم هم کد کاراکترهای مختلف رو میده هم عملکرد تابع رو نشون میده . اگه عمل نکرده واسه این بوده که عملکرد ماکروها ماژولها فعال نبوده . ضمنا کدهای اسکی به کار شما نمیاد کد یونیکد رو نیاز دارید .
    شما این نسخه کامپایل شده رو بررسی کن .
    فایل های ضمیمه فایل های ضمیمه

  15. #15
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    در قسمت کاراکتر هرچی تایپ بشه کد ارسالی کیبورد نمایش داده میشه و با زدن کلید تبدیل کد اسکی و یونیکد کاراکتر نمایش داده میشه . در همون فیلد میتونید هر کاراکتری رو خواستین از جای دیگه کپی - پیس کنین و کد اون رو ببینید
    در فیلد عملکرد تابع هم هر نوع ی تایپ کنید فقط ی عربی وارد میشه و هر نوع ک یا ه تایپ کنید فقط کاراکتر های فارسی وارد میشه

  16. #16
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    در فایل قبلی جای کد اسکی و یونیکد جابه جا بود که درست کردم .

    کاراکتر ---- کد عربی ---- کد فارسی

    ی -----------1610---------- 1740
    --------------1609

    ک-----------1603 ----------1705

    ه -----------1577------------1607
    -------------1728

    و -----------1572 -----------1608
    فایل های ضمیمه فایل های ضمیمه

  17. #17
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    تو این نمونه هم میتونید کد رو وارد کنید و کاراکتر رو ببینید
    فایل های ضمیمه فایل های ضمیمه

  18. #18
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    آخرین ویرایش به وسیله Rasool-GH : سه شنبه 11 شهریور 1393 در 22:07 عصر

  19. #19
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    اینجا هم کلیه کاراکترها هستن
    http://unicodinator.com/

  20. #20
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    ضمنا باید در تبدیل اعداد هم توجه داشته باشین
    http://www.easysoft.ir/services/convertor

  21. #21
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    یک دستور هم درباره کاراکترهای سیستم هست که میتونید در run دستور charmap رو استفاده کنید تا کلیه کاراکترها رو ببینید


    این هم جالبه

    http://www.dotnettips.info/post/1774...85%D8%A7%D8%AA

  22. #22
    کاربر دائمی
    تاریخ عضویت
    آبان 1387
    محل زندگی
    Iran
    پست
    1,338

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    سلام. طبق خواست یکی از دوستان نتیجه نهایی که بهش رسیدم رو اینجا می زارم. نتیجه ای که بهش رسیدم این بود که چون کد حرف واو 1608 و کد حرف ه فارسی 1607هست پس ه می ره قبل از واو قرار می گیره موقع مرتب سازی. بنابراین دنبال حرف ه ای گشتم که کدش بزرگتر از 1608 باشه. این دو تا رو پیدا کردم 1728 ۀ 1729 ہتل این طوری مرتب سازی درست انجام میشه ولی خوب نمی خواستم ه ها به صورتی که در بالا گذاشتم نمایش داده بشه بنابراین در برنامه (زبان سی شارپ و تحت فریم ورک Asp.net) با کدهای زیر در نتیجه سورت شده مجدداً ه های عربی رو با فارسی replace کردم.
    public string ConvertCharPersianToArabic(string Input)     {         if (Input != null)         {                         char he1 = Convert.ToChar(1607);             char he2 = Convert.ToChar(1728);               Input = Input.Replace(he1, he2);             return Input;         }         else         {             return "";         }     }
    در هر صورت از نظر من این یه جواب ایده آل نیست و بنابراین فعلاً ترجیح می دم فیلدهای منو رو با این که تعدادشون زیاده خودم پشت سر هم در جدول درج کنم و بر اساس فیلد ID مرتب سازی رو انجام بدم. ولی خوب در جاهایی که درج از طریق کارفرما صورت می گیره این جوابگو نیست و فعلاً ظاهراً جز همون راهی که نوشتم چاره ای نیست.

  23. #23

    نقل قول: مشکل مرتب سازی با حروف ه و ک

    سلام
    در صورتیکه collation دیتابیس رو به فارسی مثلا Persian_100_CS_AS تغییر بدید تمام مشکلات حل خواهد شد
    این امکان فکر میکنم از Sql server 2008 به بالا وجود داشته باشه

تاپیک های مشابه

  1. مشکل مرتب سازی فارسی در اکسس 2000
    نوشته شده توسط amin_programmer در بخش Access
    پاسخ: 14
    آخرین پست: سه شنبه 10 بهمن 1402, 16:31 عصر
  2. سوال: dropdownlist مشکل مرتب سازی گرید ویو با دریافت کلید از کنترل
    نوشته شده توسط mrmohsen در بخش ASP.NET Web Forms
    پاسخ: 0
    آخرین پست: یک شنبه 02 فروردین 1388, 23:49 عصر
  3. سوال: مشکل مرتب سازی بر اساس حروف الفبا
    نوشته شده توسط meh_smm در بخش Access
    پاسخ: 1
    آخرین پست: جمعه 15 شهریور 1387, 16:20 عصر
  4. مشکل مرتب سازی و جستجوی اطلاعات فارسی
    نوشته شده توسط Krubnik در بخش SQL Server
    پاسخ: 5
    آخرین پست: شنبه 04 تیر 1384, 15:04 عصر
  5. مرتب سازی براساس حروف الفبا
    نوشته شده توسط mostafa612003 در بخش Access
    پاسخ: 2
    آخرین پست: پنج شنبه 26 خرداد 1384, 08:49 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •