ITI0011:harjutus 05

Allikas: Kursused
Mine navigeerimisribale Mine otsikasti

Tähtaeg: 29. veebr - 1. märts 2016
Kaust git'is: EX05

Lugemist

Ülesanne

Bob ja Alice on filmisõltlased. Nad võistlevad, kumb teab filmidest rohkem ning nõustusid mõlemad meelde jätma 20 populaarse filmi andmed - filmi nime, hinde, kirjelduse ja ilmumiskuupäeva. Kuna nad elavad paigas, kus Internet on katkendlik, siis laadivad nad filmide info alla ja salvestavad need hilisemaks lugemiseks. Ette on antud nimekiri, milles iga rida tähistab mõnda hiljutist filmi. Filmi iseloomustavad andmed on eraldatud püstkriipsu (pipe) märgiga "|".
Sinu ülesanne on andmed üksteisest eraldada ning uuesti trükkida paremas vormingus.

Näidissisend ühel real:

2016-02-09|Deadpool|Based upon Marvel Comics’ most unconventional anti-hero, DEADPOOL tells the origin story of former Special Forces operative turned mercenary Wade Wilson, who after being subjected to a rogue experiment that leaves him with accelerated healing powers, adopts the alter ego Deadpool. Armed with his new abilities and a dark, twisted sense of humor, Deadpool hunts down the man who nearly destroyed his life.|7.24

Parem vormindus:

Deadpool
Release date: 09/02/2016
Description: Based upon Marvel Comics’ most unconventional anti-hero, DEADPOOL tells the origin story of former Special Forces operative turned mercenary Wade Wilson, who after being subjected to a rogue experiment that leaves him with accelerated healing powers, adopts the alter ego Deadpool. Armed with his new abilities and a dark, twisted sense of humor, Deadpool hunts down the man who nearly destroyed his life.
Average rating: 7.24

Näitesisend:

2016-02-24|Movie1|description|8.0
2015-02-24|Marmortahvel|hea film|6.66

Näiteväljund:

Movie1
Release date: 24/02/2016
Description: description
Average rating: 8.0

Marmortahvel
Release date: 24/02/2015
Description: hea film
Average rating: 6.66

Näidissisend: Meedia:Movies.txt

Antud ülesande jaoks peate kirjutama kaks funktsiooni:

  • convert, mis võtab sisse sisendfaili nimetuse ja väljundfaili nimetuse. Funktsioon loeb andmed sisendfailist ülalmainitud üherealisel kujul, töötleb read ja kirjutab väljundfaili ülalmainitud mitmerealisel kujul. Reavahetuseks kasutada "\n" (näiteks kirjutage faili "rida üks" + "\n" + "rida kaks"). Funktsioon tagastab loetud filmide koguse. Kui mõnda rida ei õnnestu lugeda, siis jätta see rida vahele. Erinevate sisendridade vahele jätta väljundis üks tühi rida.
  • getNicelyFormattedMovie, mis võtab sisendiks üherealise filmiinfo (|-märgiga eraldatud nagu sisendfailis üks rida) ja tagastab samad andmed mitmerealise sõnena (nagu väljundfailis ühe filmi info). Väljundi lõpus reavahetust ei ole. Kui sisendist ei ole võimalik infot välja lugeda, tagastada null.

Mall

javadoc'i (meetodite ja vajadusel ka muutujate kirjelduse) peate ise kirjutama.

<source lang="java"> public class EX05 {

   public static void main(String[] args) {
       System.out.println(getNicelyFormattedMovie("tere|")); // null
       System.out.println(getNicelyFormattedMovie("2016-02-24|Movie1|description|8.0"));
       /*

Movie1 Release date: 24/02/2016 Description: description Average rating: 8.0 <- no new line in the end

        */
   }
   public static int convert(String inputFilename, String outputFilename) {
       return 1337;
   }
   public static String getNicelyFormattedMovie(String movieLine) {
       return null;
   }

} </source>