java-hw2.pdf

‫ﺑﻪ ﻧﺎم ﺧﺪا‬
‫ﺑﺮﻧﺎﻣﻪ ﺳﺎزي ﭘﻴﺸﺮﻓﺘﻪ‬
‫داﻧﺸﻜﺪه م‪.‬ﻛﺎﻣﭙﻴﻮﺗﺮ‪ ،‬داﻧﺸﮕﺎه ﺻﻨﻌﺘﻲ ﺷﺮﻳﻒ‬
‫ﺗﻤﺮﻳﻦ ﺳﺮي دوم‬
‫زﻣﺎن ﺗﺤﻮﻳﻞ ‪ 25 :‬اردي ﺑﻬﺸﺖ ‪86‬‬
‫ﺗﻤﺮﻳﻦ ﻫﺎ را ﺗﺎ ﻧﻴﻤﻪ ﺷﺐ زﻣﺎن ﺗﺤﻮﻳﻞ ﺑﻪ آدرس اي‪-‬ﻣﻴﻞ درس ارﺳﺎل ﻧﻤﺎﻳﻴﺪ‪.‬‬
‫‪[email protected]‬‬
‫‪hw2-StudentID‬‬
‫خالی بماند‬
‫‪MusicCrawler.jar,‬‬
‫‪MusicCrawler.src.zip‬‬
‫‪email‬‬
‫‪subject‬‬
‫‪Body‬‬
‫‪Attachment‬‬
‫•‬
‫در اﻳﻦ ﺗﻤﺮﻳﻦ ﺷﻤﺎ ﻣﻲ ﺑﺎﻳﺴﺖ ﺑﺮﻧﺎﻣﻪ اي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ ﻳﻚ آدرس ﻳﻚ ﻓﻮﻟﺪر را از ورودي ﮔﺮﻓﺘﻪ ) اﻳﻦ ﻓﻮﻟﺪر‬
‫ﺷﺎﻣﻞ ﺗﻌﺪاد زﻳﺎدي ‪ subfolder‬و آﻫﻨﮓ ﻫﺎي ﻣﺨﺘﻠﻒ ﻣﻲ ﺑﺎﺷﺪ ( و آن را ﭘﻴﻤﺎﻳﺶ ﻧﻤﺎﻳﺪ و ﺑﺮاي ﻫﺮ ﻓﻮﻟﺪر‬
‫ﻳﻚ ‪ playlist‬ﻣﺠﺰا ﺑﺴﺎزد ﺑﻪ ﺻﻮرﺗﻲ ﻛﻪ اﺳﻢ ﻛﻠﻴﻪ آﻫﻨﮓ ﻫﺎي ﻣﻮﺟﻮد در درون آن ﻓﻮﻟﺪر ‪ 1‬را در ﻳﻚ ﻓﺎﻳﻞ‬
‫‪ xml‬ﺑﺎ اﺳﻢ ‪ FolderName.wpl‬ذﺧﻴﺮه ﻛﻨﺪ ‪ . 2‬ﺑﺮﻧﺎﻣﻪ ﺷﻤﺎ ﻣﻲ ﺑﺎﻳﺴﺖ اﻳﻦ ﻛﺎر را ﺑﻪ ﺻﻮرت ﺑﺎزﮔﺸﺘﻲ‬
‫‪3‬‬
‫ﺑﺮاي ﺗﻤﺎم زﻳﺮﻓﻮﻟﺪر ﻫﺎي ﻣﻮﺟﻮد ﺗﻜﺮار ﻧﻤﺎﻳﺪ‪ ) .‬ﻓﺮض ﻛﻨﻴﺪ ﻛﻪ در درون ﻓﻮﻟﺪر ﻫﺎ دور وﺟﻮد ﻧﺪارد‪( .‬‬
‫•‬
‫ﺑﺮﻧﺎﻣﻪ اي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ ﻗﺎﺑﻠﻴﺖ وﻳﺮاﻳﺶ ﻓﺎﻳﻞ ﻫﺎي ‪ playlist‬را ﻛﻪ در ﺗﻤﺮﻳﻦ ﻗﺒﻞ ﻧﻮﺷﺘﻪ اﻳﺪ داﺷﺘﻪ ﺑﺎﺷﺪ‪.‬‬
‫اﻳﻦ ﺑﺮﻧﺎﻣﻪ ﺑﺎﻳﺪ ﻳﻚ آدرس را از ورودي ﮔﺮﻓﺘﻪ و ﺗﻤﺎم ‪ playlist‬ﻫﺎي درون آن را ﻟﻴﺴﺖ ﻧﻤﺎﻳﺪ و اﻳﻦ اﻣﻜﺎن‬
‫را ﺑﻪ ﻛﺎرﺑﺮ داده ﺗﺎ ﺑﺮاي ﻫﺮ ﻳﻚ از ‪ playlist‬ﻫﺎي ﻓﻮق آﻫﻨﮓ ﻫﺎي درون ﻳﻚ ﻟﻴﺴﺖ را ﻣﺸﺎﻫﺪه ﻛﺮده و‬
‫ﻟﻴﺴﺖ را وﻳﺮاﻳﺶ ﻧﻤﺎﻳﺪ‪ ).‬آﻫﻨﮓ ﻫﺎي ﺟﺪﻳﺪي را ﺑﻪ آن اﻓﺰوده و ﻳﺎ ﺑﺮﺧﻲ آﻫﻨﮓ ﻫﺎ را ﺣﺬف ﻛﻨﺪ‪( .‬‬
‫ﺗﻮﺟﻪ ﻛﻨﻴﺪ‪:‬‬
‫‪.1‬‬
‫‪.2‬‬
‫‪.3‬‬
‫‪.4‬‬
‫ﺑﺮﻧﺎﻣﻪ ﺷﻤﺎ ﺑﺎﻳﺪ ﻇﺎﻫﺮي ﻛﺎرﺑﺮﭘﺴﻨﺪ داﺷﺘﻪ ﺑﺎﺷﺪ و ﻛﺎر ﺑﺎ آن ﺑﺴﻴﺎر ﺳﺎده ﺑﺎﺷﺪ‪ .‬ﺑﻪ ﻋﻼوه از ﮔﺮﻓﺘﻦ‬
‫ورودي ﻫﺎ ﺑﻪ ﺷﻜﻞ ﻳﻚ ‪ inputDialog‬ﺧﻮدداري ﻛﻨﻴﺪ‪ .‬ﺗﻤﺎﻣﻲ آدرس ﻓﺎﻳﻞ ﻫﺎ ﻫﺎ ﻓﻮﻟﺪر ﻫﺎ را ﺑﺎ‬
‫‪4‬‬
‫ﻛﻤﻚ ‪ FileChooser‬اﻧﺠﺎم دﻫﻴﺪ‪.‬‬
‫ﺑﺮﻧﺎﻣﻪ ﺧﻮد را ﻣﺒﺘﻨﻲ ﺑﺮ اﺻﻮل ﺷﻲ ﮔﺮا ﻗﺮار دﻫﻴﺪ‪ .‬ﺗﻮﺟﻪ ﻛﻨﻴﺪ ﻛﻪ ﻗﺴﻤﺘﻲ از ﺑﺮﻧﺎﻣﻪ دوم ﺷﻤﺎ ﻣﻲ‬
‫ﺗﻮاﻧﺪ از ﻛﻼس ﻫﺎي ﺑﺮﻧﺎﻣﻪ ﻧﺨﺴﺖ ﺷﻤﺎ اﺳﺘﻔﺎده ﻛﻨﺪ‪.‬‬
‫ﺑﺮﻧﺎﻣﻪ ﺷﻤﺎ در زﻣﺎن اﺟﺮا ﻧﻴﺎز ﺑﻪ دﺳﺘﺮﺳﻲ ﺑﻪ ﺳﻴﺴﺘﻢ ﻓﺎﻳﻞ دارد‪ .‬ﭘﺲ از ﻧﻮﺷﺘﻦ ﺑﺮﻧﺎﻣﻪ ﺗﺎن در‬
‫ﻗﺎﻟﺐ ﻳﻚ ‪ applet‬ﺑﭙﺮﻫﻴﺰﻳﺪ‪.‬‬
‫ﺑﺮاي ﻛﺎر ﺑﺎ ﻓﺎﻳﻞ ﻫﺎي ‪ XML‬ﻣﻲ ﺗﻮاﻧﻴﺪ ﻣﺴﺘﻘﻴﻤﺎ ﺧﻮدﺗﺎن آﻧﻬﺎ را ﺗﺤﻠﻴﻞ ﻛﻨﻴﺪ‪ .‬وﻟﻲ ﺗﻮﺻﻴﻪ‬
‫ﻣﻲ ﻛﻨﻴﻢ ﻛﻪ از ‪ ) javax.xml‬ﻣﺎﻧﻨﺪ ‪ javax.xml.bind‬و ‪ javax.xml.stream‬ﺑﻪ ﺧﺼﻮص‬
‫‪ ( XMLInputFactory‬اﺳﺘﻔﺎده ﻛﻨﻴﺪ‪ .‬اﻳﻦ ﻛﻼس ﻫﺎ در ‪ JDK 6‬ﻣﻮﺟﻮد ﻣﻲ ﺑﺎﺷﻨﺪ‪.‬‬
‫‪ 1‬ﺑﺎ ﻓﺮﻣﺖ ﻫﺎي … ‪midi, mid, mp3, mp4, wma, wav, ogg ,‬‬
‫‪ 2‬اﻳﻦ ﻓﺮﻣﺖ ﻓﺎﻳﻞ ﻫﺎي ‪ playlist‬ﺑﺮاي ﺑﺮﻧﺎﻣﻪ ‪ Microsoft® Windows® Media Player‬ﻣﻲ ﺑﺎﺷﺪ‪ .‬ﺑﺎ ﺟﺰﺗﻴﺎت اﻳﻦ ﻓﺮﻣﺖ در ﺿﻤﻴﻤﻪ آﺷﻨﺎ‬
‫ﺧﻮاﻫﻴﺪ ﺷﺪ‪.‬‬
‫‪ 3‬آﻳﺎ ﻣﻲ ﺗﻮاﻧﻴﺪ ﺑﮕﻮﻳﻴﺪ ﭼﮕﻮﻧﻪ ﻣﻲ ﺗﻮان در درون ﻓﻮﻟﺪر ﻫﺎ دور اﻳﺠﺎد ﻛﺮد؟‬
‫‪ 4‬ﺑﺮاي آﺷﻨﺎﻳﻲ ﺑﺎ ‪ fileChooser‬ﻣﻲ ﺗﻮاﻧﻴﺪ از ‪ Swing Tutorial‬اﺳﺘﻔﺎده ﻛﻨﻴﺪ‪.‬‬
‫ﺿﻤﻴﻤﻪ‪ :‬ﻓﺎﻳﻞ ﻫﺎي ‪wpl‬‬
‫اﻳﻦ ﻓﺎﻳﻞ ﻫﺎ ﺗﻮﺳﻂ ﺑﺮﻧﺎﻣﻪ ‪ Media Player‬ﺑﻪ ﻋﻨﻮان ‪ playlist‬ﻣﻮرد اﺳﺘﻔﺎده ﻗﺮار ﻣﻲ ﮔﻴﺮﻧﺪ‪ .‬اﻳﻦ ﻓﺎﻳﻞ ﻫﺎ ﻣﻲ ﺗﻮاﻧﻨﺪ‬
‫ﺟﺰﺋﻴﺎت زﻳﺎدي را در ﺧﻮد ذﺧﻴﺮه ﻛﻨﻨﺪ وﻟﻲ ﺳﺎده ﺗﺮﻳﻦ ﺷﻜﻞ آﻧﻬﺎ ﺑﻪ ﺻﻮرت زﻳﺮ اﺳﺖ‪:‬‬
‫>? ”‪<? wpl version=”1.0‬‬
‫>‪<smil‬‬
‫>‪<head‬‬
‫>‪<meta name=”Generator” content=”MusicCrawler” /‬‬
‫>‪<meta author /‬‬
‫>‪<meta name="ItemCount" content="2"/‬‬
‫>‪<title> Folder/Album Name </title‬‬
‫>‪</head‬‬
‫>‪<body‬‬
‫>‪<seq‬‬
‫>‪<media src=”filename.mp3” /‬‬
‫>‪<media src=”filename2.wav” /‬‬
‫…‬
‫>‪</seq‬‬
‫>‪</body‬‬
‫>‪</smil‬‬
‫ﺑﺮاي اﻃﻼﻋﺎت ﺑﻴﺸﺘﺮ ﻣﻲ ﺗﻮاﻧﻴﺪ از اﻳﻨﺠﺎ ﻳﺎ اﻳﻨﺠﺎ اﺳﺘﻔﺎده ﻛﻨﻴﺪ در اﻳﻨﺠﺎ ﻧﺤﻮه ﺳﺎﺧﺘﻦ اﻳﻦ ﻓﺎﻳﻞ ﺑﻪ ﺻﻮرت ﻛﺎﻣﻞ‬
‫ﺗﻮﺿﻴﺢ داده ﺷﺪه اﺳﺖ‪..‬‬
‫ﻣﻮﻓﻖ ﺑﺎﺷﻴﺪ‪.‬‬