ورود

View Full Version : فارسی نویسی در جاوا



m.sepidar
پنج شنبه 05 شهریور 1388, 01:09 صبح
سلام من یه application چت نوشته م که قراره یه چت فارسی باشه...حالا مشکلی که دارم اینه که وقتی یه نفر تو پنجره چت خودش یه چیز فارسی تایپ می کنه توی textarea ی که توی همون پنجره هست(که متن چت هر دو نفر رو نمایش میده) درست نمایش داده می شه ولی توی textarea ی پنجره چت طرف مقابل همش ????? چاپ می کنه.باید چیکار کنم که درست بشه؟
لطفا اگه کسی میتونه کمک کنه
ممنون

m.sepidar
پنج شنبه 05 شهریور 1388, 18:28 عصر
چرا هیچکی جواب نمیده؟
تو رو خدا اگه کسی می تونه کمک کنه بدجور گیر کردم

Sh_Asgharian
پنج شنبه 05 شهریور 1388, 23:39 عصر
سلام
یه راه به ذهنم می رسه.امتحانش کنید.امیدوارم کمکتون کنه.از iso استفاده کنید.قطعه کد زیر را ببینید تا بهتر متوجه بشید:




<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd&quot;&gt; (http://www.w3.org/TR/html4/loose.dtd%22%3E) <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Insert title here</title> </head> <body> <form method="post" action="slwebt1" > <input type="text" name="id"> <input type="text" name="name"> <input type="submit"> </form> </body> </html>



سمت servlet هم request.setcharacterencoding اینارو تنظیم نکنید.
موفق باشید

m.sepidar
جمعه 06 شهریور 1388, 02:24 صبح
ممنون که بالاخره یکی جواب داد ولی این یه application معمولیه... applet و servlet نیست .چیکار باید بکنم؟
من سعی کردم همه ی string هام رو هم به UTF-8 تبدیل کنم ولی مشکل همچنان هست.

java.source.ir
جمعه 06 شهریور 1388, 10:15 صبح
سلام
مطلب زیر را مطالعه کن؛ همه مشکلاتت به امید خدا حل می شود:

حل مشکل فارسی در برنامه نویسی سوکت (http://javasource.blogfa.com/post-2.aspx)

m.sepidar
جمعه 06 شهریور 1388, 15:03 عصر
سلام
مطلب زیر را مطالعه کن؛ همه مشکلاتت به امید خدا حل می شود:

حل مشکل فارسی در برنامه نویسی سوکت (http://javasource.blogfa.com/post-2.aspx)



بابا ای ول!!!!!!!!!!!
آقا خیلی دستتون درد نکنه...
حل شد

java.source.ir
جمعه 06 شهریور 1388, 18:55 عصر
سلام
مطلب زیر را مطالعه کن؛ همه مشکلاتت به امید خدا حل می شود:

حل مشکل فارسی در برنامه نویسی سوکت (http://javasource.blogfa.com/post-2.aspx)

در مورد فارسی نویسی در JSP و اضافه کردن اطلاعات فارسی به بانک اطلاعاتی و بازیابی آنها به کمک آن، پیشنهاد می نمایم که مقاله زیر را مطالعه نمایید:

رفع مشکل فارسی در Servlet و JSP (http://java.tadbirpoya.ir/articles/farsi/Farsi%20problem%20in%20web%20application.htm)

jlover
سه شنبه 10 شهریور 1388, 06:48 صبح
با عرض سلام خدمت دوستان عزیز
من هم همین مشکل رو دارم ، فقط قبلش غرض کنم که بنده به تازگی شروع به کار با جاوا کردم و از کتاب «جاوا،جاوا،جاوا» و netbeans 3.6 و j2re 1.4.2_06 استفاده می کنم .
روشی که بنده برای خوندن و نوشتن متون فارسی در یک ویرایشگر متنی ساده که توانایی ذخیره و بازیابی فایل رو هم داره استفاده می کنم :


outStream = new BufferedWriter (new OutputStreamWriter (new FileOutputStream
;((("new FileOutputStream(currentFile), Charset.forName("UTF-16

برای خوندن هم که می تونید حدس بزنید ، از قرینه ها استفاده می کنم.
اما برخی حروف ( مثل «ی» و «و» ) به درستی به حرف قبل و بعد خود اضافه نمی شوند(در واقع نمی چسبند و به صورت حرف تنها ظاهر می شوند)،همینطور در input dialog مورد استفاده در این برنامه هم رشته هاس متنی با همین نقص ظاهر می شوند.
در ضمن این برنامه در حال حاضر با این متد فقط قادر به نمایش فایلهای ذخیره شده در فرمت یونیکد است و متون در فرمت اسکی را نمیتواند به درستی دیکد کند ، و در صورت برداشتن charset مشخص شده،فقط در قالب اسکی ، ذخیره و بازیابی می نماید.
آیا راه ساده ای برای بهبود این نقایص وجود دارد ؟

java.source.ir
سه شنبه 10 شهریور 1388, 12:52 عصر
با عرض سلام خدمت دوستان عزیز
من هم همین مشکل رو دارم ، فقط قبلش غرض کنم که بنده به تازگی شروع به کار با جاوا کردم و از کتاب «جاوا،جاوا،جاوا» و netbeans 3.6 و j2re 1.4.2_06 استفاده می کنم .
روشی که بنده برای خوندن و نوشتن متون فارسی در یک ویرایشگر متنی ساده که توانایی ذخیره و بازیابی فایل رو هم داره استفاده می کنم :


outStream = new BufferedWriter (new OutputStreamWriter (new FileOutputStream
;((("new FileOutputStream(currentFile), Charset.forName("UTF-16

برای خوندن هم که می تونید حدس بزنید ، از قرینه ها استفاده می کنم.
اما برخی حروف ( مثل «ی» و «و» ) به درستی به حرف قبل و بعد خود اضافه نمی شوند(در واقع نمی چسبند و به صورت حرف تنها ظاهر می شوند)،همینطور در input dialog مورد استفاده در این برنامه هم رشته هاس متنی با همین نقص ظاهر می شوند.
در ضمن این برنامه در حال حاضر با این متد فقط قادر به نمایش فایلهای ذخیره شده در فرمت یونیکد است و متون در فرمت اسکی را نمیتواند به درستی دیکد کند ، و در صورت برداشتن charset مشخص شده،فقط در قالب اسکی ، ذخیره و بازیابی می نماید.
آیا راه ساده ای برای بهبود این نقایص وجود دارد ؟

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

*** یک بار دیگر مطالب را به دقت مطالعه نمایید به امید خدا مشکلتان حل می شود.

موفق و سربلند باشید.

jlover
چهارشنبه 11 شهریور 1388, 01:50 صبح
والا من حقیقت همه ی اینا رو خوندم ، اما شما آیا خودتون در netbeand امتحان کردی ؟
من دقیقا چنین کدی رو وارد می کنم ، البته میشه از UTF-8 هم استفاده کرد ، ولی به هر حال کلی نیست
و مشکل حروف «ی» و «و» همچنان پابرجاست .....

java.source.ir
پنج شنبه 12 شهریور 1388, 08:39 صبح
ما شما آیا خودتون در netbeand امتحان کردی ؟


بنده در NetBeans 6.1 و NetBeans 6.5 اینکار رو انجام دادم و جواب گرفتم. اگر دوست داشتید یک نمونه برنامه کوچک به همان طریق که ایجاد می نمایید، برایم بفرستید تا ببینم مشکل از چیه؟

jlover
شنبه 14 شهریور 1388, 00:38 صبح
بله ، حتما با کمال میل ، ممنون مبشم زحمتشو بکشین
اینم خدمتتون عرض کنم که توی خود ادیتورش هم اگه آلت شیفت وینذوز رو بزنم و فارسی بتایپم ، تک تک حروف فارسی رو جدا جدا نشون میده ...
و تو این برنامه ، مشکل ؟ شدن یا مربعی شدن نیست ، فقط بعضی حروف حالت چسبونشون درست عمل نمی کنه ، مخصوصا ی و و و حتی مثلا ر به ک
هم تو UTF-16 و هم UTF-8 ...

java.source.ir
شنبه 14 شهریور 1388, 10:39 صبح
توی خود ادیتورش هم اگه آلت شیفت وینذوز رو بزنم و فارسی بتایپم ، تک تک حروف فارسی رو جدا جدا نشون میده ...


سلام

برنامه تان را بدون هیچ گونه مشکلی اجرا نمودم. حال اگر مشکلی غیر از این هم وجود داشت باز به بنده بگویید.

*** برنامه بدون مشکلات اشاره شده بود که شما فرموده بودید.

jlover
دوشنبه 16 شهریور 1388, 05:16 صبح
آقا یک دنیا ممنون ، به کلی داشتم افسرده می شدم :خجالت: آخه خیلی نادخه آدم نتونه فارسی رو وارد نرم افزارش کنه و حالا خیلی خوشحالم که کدهایی که برا اولین بار واسه کار با فارسی نوشتم و فقط هم از مستندات j2sdk کمک گرفتم ، درست کار میکنه ( :بامزه: چقدرم حال دارم میدم به خودم - به عنولن تازه کار بهم حق بدین :چشمک: ) . اصلن عکس ضمیمه رو که دیدم حال کردم ، جالب اینه که شکل خط هم قشنگتر از توی محیط منه ( همون ناقصه البته )
درباره اون specify هم که کار نکرد باید عرض کنم که : به توصیه ی شما کل این تالار رو با واژه ی فارسی جستجو کردم و یه جایی یکی گفته بود که باید تو netbeans properties گزینه ی encoding رو به یونیکد تغییر بدی ، مام با هزار امید توی options هر جایی که تو properties ش اینکدینگ داشت به utf-8 تغییر دادیم ( و نه UTF-8 )و سرتونو درد نیارم ، دیگه هیچی که اجرا نمیشد (وارد جزئیات نمیشم) کد منبع برنامه هم توسط netbeans خوشکل ما ، به اندازه ی صفر رسید :عصبانی++: ، هر چی توش بود جاروب شد . خوشبختانه بایت کدش بود و برای اولین بار javap رو به کار انداختیم ( درست همین موقع بود که شما گفتی من واست تست می کنم ) خلاصه با jd-gui کذ ها رو بازیابی کردم ، ولی دقت نکردم ببینم کاملا درست برگردونذه یا نه ، که دیدم چند خطی رو اونجا جا گذاشته ، تازه اون همه هم this نداشت و import هاش هم چند تا کلی بودند .... ولی دمش گرم خیلی سخت بود اولین تمرین کار با فایل رو دوباره بنویسم :لبخند:
اما خب جدای از این حاشیه ها :
چه باید کرد ، قاعدتا حدس بنده ایراد در IDE هستش یا شایدم jdk ( البته اگه خداییش برنامه منو اصلاح نکرده باشین و واقعا خودش زبون وطنیمون رو به این خوبی نشون میداد :چشمک: )
نسخه های مورد استفاذه رو هم که تو اولین پستم گفتم ...
شما نظرتون چیه گرام ؟

java.source.ir
دوشنبه 16 شهریور 1388, 06:30 صبح
سلام
دوست عزیز، برنامه شما را بدون کوچکترین تغییری اجرا نمودم. یعنی برنامه شما هیچ گونه ایرادی که نداشت بلکه بسیار جالب نیز بود.

*** برنامه شما را بنده هم در NetBeans 6.5 و هم به طور جداگانه در JDK 1.6 update 2 بدون هیچ گونه تغییری در کدهای برنامه اجرا نمودم؛ که نتیجه اش همان عکسی است که به شما در مطلب قبلی فرستاده ام. راستش خودم هم دقیقا نمی دانم که مشکل کار از کجاست که برای شما بعضی حروف را به صورت جدا نشان می دهد؟ از یکی از دوستان نیز که در این زمینه متخصص بود پرس و جو نمودم اما ایشان هم جواب قطعی نداد.

موفق و سربلند باشید. اگر ایرادی در زمینه های دیگر نیز داشتی خوشحال می شوم که کمکت نمایم.

jlover
دوشنبه 16 شهریور 1388, 15:43 عصر
دستتون درد نکنه ، تو زمینه ی گراثیکی هم یکی دوتا نمونه کار هست که ایرادات دور از انتظاری مثل این نمونه داره که در تاپیک جداگونه از همه ی بزرگواران یاری می طلبم.
ولی گذاشتم تا چند روز آینده که ADSL :قلب: وصل کردم ، آخرین نسخه های ابزار کار رو بارگیری کنم و امیدوار باشم که ایراد از نسخه ای هست که من فعلا در اختیار دارم ، یه بار دیگه اجراشون کنم بعد مزاجم میشم ...
راستی من یه تاپیکی با عنوان « شروع کار با جاوا » ایجاد کردم ، اگر محبت کنید یه وقت کوچولو برا اون بزارید ممنون میشم ، من یه کمی زیادی حساسم ، می خلم بدونم دقیقا چه چیزی رو باید بارگیری کنم که آخرین نسخه باشه .
بخونید شرح حالمو متوجه می شید ( البته هر وقت فرصت کردید :چشمک: )
با سپاس فراوان

Sh_Asgharian
دوشنبه 23 شهریور 1388, 00:30 صبح
سلام
به جای utf8 ازISO-8859-1 استفاده کنید.امیدوارم حل بشه

jlover
سه شنبه 24 شهریور 1388, 04:07 صبح
ممنون دوست عزیز ، اما فرقی نکرد

mosi20
پنج شنبه 02 مهر 1388, 19:40 عصر
منم با فارسی نویسی مشکل دارم
این تصویر را ببینید.
تمامی ي ها را جدا میزنه.
چیکار کنم؟
چجوری فارسی بنویسم؟

mosi20
شنبه 18 مهر 1388, 20:38 عصر
مشکل من حل شد!!به خاطر فونت بود!