Advertisement
Guest User

Untitled

a guest
Dec 8th, 2016
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.25 KB | None | 0 0
  1. /* Laki 2 H6T2
  2. * Lauri Suomela 422001
  3. * Ohjelma lukee tekstitiedoston ja sijoittaa sen rivit
  4. * käännettyinä uuteen tiedostoon.
  5. */
  6.  
  7. import java.io.*;
  8. public class LineReverser {
  9.  
  10. public static void main(String[] args) {
  11.  
  12. // Luetaan luettavan tiedoston nimi käyttäjää ohjeistaen.
  13. System.out.println("Hello! I reverse files.");
  14. System.out.println("Please, enter file name:");
  15. String syote = In.readString();
  16. // Kutsutaan operaatiota, annetaantiedoston nimi parametrinä
  17. // ja sijoitetaan paluuarvo muuttujaan.
  18. boolean OK = tulostaja(syote);
  19. if (OK == false)
  20. System.out.println("I could not reverse.");
  21. else System.out.println("File reversed.");
  22. }
  23.  
  24. // Operaatio lukee tiedoston ja kirjoittaa sen rivit samassa järjestyksessä,
  25. // mutta käännettynä. Luettavan tiedoston nimi annetaan parametrinä.
  26. // Operaatio palauttaa arvon false, mikäli operaatiota ei voida suorittaa.
  27. public static boolean tulostaja(String syote) {
  28.  
  29. // Julistetaan tiedosto johon merkkijonot tallennetaan.
  30. final String TIEDNIMI = "reverse.txt";
  31.  
  32. try {
  33. // Luodaan tiedosto-olio
  34. File tiedosto = new File(TIEDNIMI);
  35. // Luodaan tulostusvirta ja
  36. // liitetään se tiedostoon
  37. FileOutputStream tulostusvirta = new FileOutputStream(tiedosto);
  38. // Luodaan virtaan kirjoittaja
  39. PrintWriter kirjoittaja = new PrintWriter(tulostusvirta, true);
  40. // Avataan syötevirta ja liitetään se lukijaan
  41. FileInputStream syotevirta = new FileInputStream(syote);
  42. InputStreamReader lukija = new InputStreamReader(syotevirta);
  43. BufferedReader puskuroituLukija = new BufferedReader(lukija);
  44.  
  45. // Luetaan tiedosto ja sijoitetaan saatu merkkijono muuttujaan
  46. // Kirjoitetaan muuttuja käänteisenä tiedostoon
  47. String rivi = "";
  48. StringBuilder reverse = new StringBuilder();
  49. while (puskuroituLukija.ready()) {
  50. rivi = puskuroituLukija.readLine();
  51. reverse = new StringBuilder(rivi);
  52. kirjoittaja.println(reverse.reverse());
  53. }
  54. // Suljetaan lukija ja tiedosto
  55. puskuroituLukija.close();
  56. kirjoittaja.close();
  57. return true;
  58. }
  59. catch(IOException e) {
  60. return false;
  61. }
  62. }
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement