آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

آموزش File Choser در جاوا

در این بخش چگونگی نمایش دیالوگ باکس های Open File را در جاوا مشاهده خواهید کرد. این کار توسط File Choser انجام می شود.

به ویو Design بازگردید. در پالت NetBeans آیتم File Chooser را قرار دهید که در زیر Swing Windows قرار دارد:

آموزش جاوا

یک File Chooser را به نزدیک فرم خود و نه در داخل آن درگ کنید و آن را درست زیر فرم و در منطقه ی سفید قرار دهید. این برنامه در واقع روی فرم ظاهر نخواهد شد، اما می توانید آن را در پنجره ی Inspector مشاهده کنید:

نام پیش فرض File Chooser در واقع jFileChooser1 می باشد. روی jFileChooser1 در پنجره ی Inspector راست کلیک کنید. از منوی ظاهر شده گزینه ی Change Variable Name را انتخاب کنید. وقتی که دیالوگ باکس ظاهر می شود، db را به عنوان نام تایپ کنید:

آموزش جاوا

روی OK کلیک کنید تا تغییر را تایید کنید. پنجره ی Inspector باید مانند تصویر زیر باشد:

آموزش جاوا

اکنون یک File Chooser دارید که به پروژه اضافه شده است.

نمایش دیالوگ باکس File Chooser بسیار ساده می باشد. برای آیتم Open در منو به code stub بازگردید، جایی که message box را داشتید. اکنون خط زیر را تایپ کنید:

مثال:

int returnVal = db.showOpenDialog( this );‎

File Chooser ما db نامیده می شود. ما در حال استفاده از متود ShowOpenDialog از گروه File Chooser هستیم. در بین پرانتزهای ShowOpenDialog نام پنجره ای را تایپ کنید که قرار است دیالوگ باکس را در خود داشته باشد. ما "this form" را تایپ کرده ایم.

متود ShowOpenDialog یک مقدار را گزارش می دهد. این مقدار یک عدد صحیح می باشد. این مقدار به شما می گوید که کدام دکمه در دیالوگ باکس کلیک شده است: open، cancel و غیره. ما در حال ذخیره سازی مقدار در متغیری به نام returnVal هستیم و از این مقدار در یک لحظه استفاده خواهیم کرد.

اما برنامه ی خود را مجددا اجرا کنید. روی File > Open در فرم خود کلیک کنید. یک دیالوگ باکس برای شما ظاهر خواهد شد:

آموزش جاوا

متاسفانه تنها کاری که یک باکس Open Dialogue انجام می دهد انتخاب یک فایل می باشد – در واقع این باکس چیزی را باز نمی کند. اگر می خواهید که یک فایل را باز کنید، باید که کد را خودتان بنویسید. ما این کار را به زودی انجام خواهیم داد. اما اکنون می توانیم نام و مسیر فایلی را که یک یوزر انتخاب کرده، دریافت کنیم.

ابتدا عبارت IF Statement زیر را درست زیر دو خط دیگر به کد خود اضافه کنید:

مثال:

if (returnVal = = javax.swing.JFileChooser.APPROVE_OPTION) {‎
‎}‎

بنابراین ما در حال استفاده از Swing class به نام JFileChooser می باشیم. با این گروه می توانید بررسی کنید که کدام دکمه کلیک شده است. وقتی که یک نقطه (dot) را پس از JFileChooser تایپ می کنید، لیستی برای شما ظاهر خواهد شد:

آموزش جاوا

APPROVE_OPTION به معنای گزینه هایی مانند دکمه های Yes یا OK میباشد. بنابراین ما در حال امتحان کردن متغیر returnVal هستیم تا هماهنگی آن را با APPROVE_OPTION بررسی کنیم. (آیا یوزر روی OK کلیک کزد؟).

برای رسیدن به فایلی که توسط یوزر انتخاب شده است، متودی به نام getSelectedFile وجود دارد. به هرحال این برنامه به جای یک رشته، یک آبجکت فایل بازمی گرداند. آبجکت File بخشی از گروه IO در جاوا می باشد. بنابراین خط زیر را به IF Statement اضافه کنید:

مثال:

java.io.File file = db.getSelectedFile( );‎

بنابراین فایل انتخاب شده توسط یوزر در آبجکت فایل که file نامیده ایم، خاتمه پیدا خواهد کرد.

برای انجام کار مفید با این برنامه (برای متال باز کردن فایل)، نیاز به تبدیل آن به یک رشته می باشد:

مثال:

String file_name = file.toString( );‎

این خط فقط از متود toString از آبجکت های File استفاده می کند. ما نتیجه را در یک متغیر جدید به نام file_name قرار می دهیم. خط را به IF Statement خود اضافه کنید.

برای نمایش نام فایل، کامنت ها را از باکس پیغام خود حذف کنید و آن را به عنوان آخرین خط از IF Statement جابجا کنید. آخرین پارامتر بین پرانتزها را به file_name تغییر دهید:

مثال:

javax.swing.JOptionPane.showMessageDialog(FormObjects.this, file_name);‎

از آنجایی که این خططولانی است می توانید، می توانید یک عبارت import به بالای کد خود و زیر کدی که دارید، اضافه کنید:

مثال:

import javax.swing.JOptionPane;‎

بنابراین خط مربوط به باکس پیغام می تواند فقط به شکل زیر باشد:

JOptionPane.showMessageDialog( FormObjects.this, file_name);‎ 

اکنون خواندن آن کمی آسانتر است! اما اکنون کد شما باید به شکل زیر باشد:

آموزش جاوا

برنامه ی خود را اجرا کرده و آن را امتحان کنید. برای مشاهده ی دیالوگ باکس روی File > Open کلیک کنید. هر فایلی در کامپیوتر خود را انتخاب کرده و سپس روی Open کلیک کنید. باکس پیغام شما مانند تصویر زیر خواهد بود:

آموزش جاوا

قبل از اینکه برای باز شدن فایل انتخاب شده، کد اضافه کنیم، ممکن است متوجه شده باشید که Files of Type روی دیالوگ باکس فایل Open بر روی "All files" تنظیم شده است. می توانید فایل های روی این لیست را فیلتر کنید، طوریکه یوزر می تواند فقط فایل های متن یا تصاویری با فرمت معین را باز کند (jpeg, gif, png).

برای فیلتر کردن لیست "Files of Type"، دیالوگ باکس دارای addChoosableFileFilter متود می باشد. اما شما نیر بین پرانتزها نیاز به آبجکت Filter دارید.

عبارت های import زیر را به بالای کد خود و درست زیر عبارت های دیگر، طوریکه کد شما طولانی نشود، وارد کنید:

مثال:

import javax.swing.filechooser.FileFilter; 
import javax.swing.filechooser.FileNameExtensionFilter;‎

برای تنظیم پسوند فیلتر نام فایل، نیاز به ایجاد یک آبجکت FileFilter جدید دارید. خط زیر را درست قبل از اولین خط از کد خود (قبل از خط int returnVal) وارد کنید:

مثال:

FileFilter ft = new FileNameExtensionFilter("Text Files", "txt");‎

بین پرانتزهای FileNameExtensionFilter، ابتدا نیاز به متنی دارید که در لیست Files of Type ظاهر خواهد شد. پس از یک کاما نام فایل هایی را تایپ می کنید که می خواهید نمایش داده شوند. در اینجا یک پسوند فایل مناسب اما بدون کاما نیاز است. به علامت های نقل قول دوتایی (") در بالا دقت کنید.

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

FileNameExtensionFilter("Text Files", "txt", "html");‎

زمانی که آبجکت فیلتر را تنظیم کرده اید، می توانید از متود addChoosableFileFilter در دیالوگ باکس خود استفاده کنید:

db.addChoosableFileFilter( ft );‎

این خط را در کد خود درست زیر خط FileFilter اضافه کنید:

آموزش جاوا

مجددا برنامه ی خود را اجرا کرده و نگاهی به دیالوگ باکس خود داشته باشید. روی پیکان در لیست رو به پایین کلیک کنید:

آموزش جاوا

گزینه ی Text Files را انتخاب کنید. سپس دیالوگ باکس شما فقط فایل هایی را با پسوند .txt نمایش خواهد داد.

اگر شما خط دیگری روی لیست می خواهید ( برای مثال نمایش فایل های html)، می توانید یک آبجکت FileFilter دیگر تنظیم کنید:

آموزش جاوا

وقتی برنامه ی شما اجرا می شود، لیست Files of Type مانند زیر خواهد بود:

آموزش جاوا

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

  • 3031
  •    826
  • تاریخ ارسال :   1394/07/27

دانلود PDF دانشجویان گرامی اگر این مطلب برای شما مفید بود لطفا ما را در GooglePlus محبوب کنید
رمز عبور: tahlildadeh.com یا www.tahlildadeh.com
ارسال دیدگاه نظرات کاربران
شماره موبایل دیدگاه
عنوان پست الکترونیک

ارسال

آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

تمامی حقوق این سایت متعلق به آموزشگاه تحلیل داده می باشد .