Package fi.jyu.mit.ohj2
Class VertaaTiedosto
- java.lang.Object
-
- fi.jyu.mit.ohj2.VertaaTiedosto
-
public class VertaaTiedosto extends java.lang.Object
Aliohjelma kahden tekstitiedoston vertaamiseksi. Käyttö lähinnä JUnit testeissä esim. seuraavasti:VertaaTiedosto.kirjoitaTiedosto("hiljaa.txt", "33 hiljaa 1 hiipii\n"+ "hyvä 33 tulee\n"+ "36 1 3 5 55\n"+ "nyt 33 riittää\n"); VertaaTiedosto.kirjoitaTiedosto("hiljaayli30.txt", "33 hiljaa 1 hiipii\n"+ "36 1 3 5 55\n"); VertaaTiedosto.tuhoaTiedosto("tulos.txt"); TulYli30.main(new String[]{"hiljaa.txt","tulos.txt"}); VertaaTiedosto.vertaaFileFile("tulos.txt","hiljaayli30.txt") === null; VertaaTiedosto.tuhoaTiedosto("hiljaa.txt"); VertaaTiedosto.tuhoaTiedosto("hiljaayli30.txt");
- Version:
- 10.3.2007
- Author:
- vesal
-
-
Constructor Summary
Constructors Constructor Description VertaaTiedosto()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
kirjoitaTiedosto(java.lang.String nimi, java.lang.String sisalto)
Kirjoitetaan tiedostoon sisältöstatic void
tuhoaTiedosto(java.lang.String nimi)
Tuhotaan tiedosto levyltästatic java.lang.String
vertaaFileFile(java.lang.String nimi1, java.lang.String nimi2)
Verrataan kahta tekstitiedostoa ja heti kun tulee ensimmäin poikkeava rivi palautetaanvirhe.static java.lang.String
vertaaFileString(java.lang.String nimi1, java.lang.String ss2)
Verrataan tekstitiedostoa merkkijonoon ja heti kun tulee ensimmäinen poikkeava rivi palautetaan virhe.static java.lang.String
vertaaString(java.io.ByteArrayOutputStream bs, java.lang.String ss2)
Verrataan keskenään merkkijonotietovirtaa ja merkkijon sisältöä.static java.lang.String
vertaaString(java.lang.String ss1, java.lang.String ss2)
Verrataan kahta tekstitiedoston kaltaista merkkijonoa ja heti kun tulee ensimmäinen poikkeava rivi palautetaan virhe.static java.lang.String
vertaaString2(java.lang.String ss1, java.lang.String ss2)
Verrataan kahta tekstitiedoston kaltaista merkkijonoa ja heti kun tulee ensimmäinen poikkeava rivi palautetaan virhe.
-
-
-
Constructor Detail
-
VertaaTiedosto
public VertaaTiedosto()
-
-
Method Detail
-
vertaaFileFile
public static java.lang.String vertaaFileFile(java.lang.String nimi1, java.lang.String nimi2) throws java.io.IOException
Verrataan kahta tekstitiedostoa ja heti kun tulee ensimmäin poikkeava rivi palautetaanvirhe. Lopussa olevat pelkkä yksi rivi ei tee eroa.- Parameters:
nimi1
- 1. verrattavan tiedoston niminimi2
- 2. verrattavan tiedoston nimi- Returns:
- ensimmäinen eroavaisuus joka löytyy. Null jos ei eroja.
- Throws:
java.io.IOException
- jos lukemisessa tapahtuu virhe.- Example:
#THROWS IOException #import java.io.*; #STATICIMPORT kirjoitaTiedosto("hiljaa1.txt", "33 hiljaa 1 hiipii\nhyvä 33 tulee\n"); kirjoitaTiedosto("hiljaa2.txt", "33 hiljaa 1 hiipii\nhyvä 33 tulee\n"); vertaaFileFile("hiljaa1.txt","hiljaa2.txt") === null; kirjoitaTiedosto("hiljaa2.txt", "33 hiljaa 1 hiipii\nhyvä 33 tulee"); vertaaFileFile("hiljaa1.txt","hiljaa2.txt") === null; kirjoitaTiedosto("hiljaa2.txt", "33 hiljaa 1 hiipii\nhyvä 33 tulee\n\n\n"); vertaaFileFile("hiljaa1.txt","hiljaa2.txt") === "Rivi 3: hiljaa1.txt loppui ensin, hiljaa2.txt on "; kirjoitaTiedosto("hiljaa2.txt", "33 hiljaa 1 hiipii\nhyvä 34 tulee\n"); vertaaFileFile("hiljaa1.txt","hiljaa2.txt") === "Ero riveissä 2: hyvä 33 tulee ja hyvä 34 tulee"; kirjoitaTiedosto("hiljaa2.txt", "33 hiljaa 1 hiipii\n"); vertaaFileFile("hiljaa1.txt","hiljaa2.txt") === "Rivi 2: hiljaa2.txt loppui ensin, hiljaa1.txt on hyvä 33 tulee"; kirjoitaTiedosto("hiljaa2.txt", "33 hiljaa 1 hiipii\nhyvä 33 tulee\nja 34 tulee\n"); vertaaFileFile("hiljaa1.txt","hiljaa2.txt") === "Rivi 3: hiljaa1.txt loppui ensin, hiljaa2.txt on ja 34 tulee"; vertaaFileFile("hiljaa1.txt","hiljaa3.txt") === "Tiedosto ei aukea: hiljaa3.txt"; vertaaFileFile("hiljaa4.txt","hiljaa2.txt") === "Tiedosto ei aukea: hiljaa4.txt"; tuhoaTiedosto("hiljaa1.txt"); tuhoaTiedosto("hiljaa2.txt");
-
vertaaFileString
public static java.lang.String vertaaFileString(java.lang.String nimi1, java.lang.String ss2) throws java.io.IOException
Verrataan tekstitiedostoa merkkijonoon ja heti kun tulee ensimmäinen poikkeava rivi palautetaan virhe. Lopussa olevat pelkkä yksi tyhkä rivi eo tee eroa.- Parameters:
nimi1
- 1. verrattavan tiedoston nimiss2
- 2. verrattava sisältö- Returns:
- ensimmäinen eroavaisuus joka löytyy. Null jos ei eroja.
- Throws:
java.io.IOException
- jos lukemisessa tapahtuu virhe.- Example:
#THROWS IOException #import java.io.*; #STATICIMPORT kirjoitaTiedosto("hiljaa1.txt", "33 hiljaa 1 hiipii\nhyvä 33 tulee\n"); vertaaFileString("hiljaa1.txt","33 hiljaa 1 hiipii\nhyvä 33 tulee\n") === null; vertaaFileString("hiljaa1.txt","33 hiljaa 1 hiipii\nhyvä 33 tulee") === null; vertaaFileString("hiljaa1.txt","33 hiljaa 1 hiipii\nhyvä 33 tulee\n\n") === "Rivi 3: hiljaa1.txt loppui ensin, jono on "; vertaaFileString("hiljaa1.txt","33 hiljaa 1 hiipii\nhyvä 33 tulee\n\n\n") === "Rivi 3: hiljaa1.txt loppui ensin, jono on "; vertaaFileString("hiljaa1.txt","33 hiljaa 1 hiipii\nhyvä 34 tulee\n") === "Ero riveissä 2: hyvä 33 tulee ja hyvä 34 tulee"; vertaaFileString("hiljaa1.txt","33 hiljaa 1 hiipii\n") === "Rivi 2: Jono loppui ensin, hiljaa1.txt on hyvä 33 tulee"; vertaaFileString("hiljaa1.txt","33 hiljaa 1 hiipii\nhyvä 33 tulee\nja 34 tulee\n") === "Rivi 3: hiljaa1.txt loppui ensin, jono on ja 34 tulee"; vertaaFileString("hiljaa1.txt",null) === "Jono on null"; vertaaFileString("hiljaa4.txt","hiljaa2.txt") === "Tiedosto ei aukea: hiljaa4.txt"; tuhoaTiedosto("hiljaa1.txt");
-
vertaaString2
public static java.lang.String vertaaString2(java.lang.String ss1, java.lang.String ss2)
Verrataan kahta tekstitiedoston kaltaista merkkijonoa ja heti kun tulee ensimmäinen poikkeava rivi palautetaan virhe. Lopussa oleva yksi tyhjä rivi ei tee eroa.- Parameters:
ss1
- 1. verrattava sisältöss2
- 2. verrattava sisältö- Returns:
- ensimmäinen eroavaisuus joka löytyy. Null jos ei eroja.
- Example:
#THROWS IOException #import java.io.*; #STATICIMPORT vertaaString2("","\n") === "Rivi 1: 1. loppui ensin, 2. on "; vertaaString2("kissa\n","kissa") === null; vertaaString2("\n\n","\n") === "Rivi 2: 2. loppui ensin, 1. on "; vertaaString2("\r\n","\n") === null; vertaaString2("\r\n","\n\n") === "Rivi 2: 1. loppui ensin, 2. on "; vertaaString2("33 hiljaa 1 hiipii\r\nhyvä 33 tulee\r\n","33 hiljaa 1 hiipii\nhyvä 33 tulee\n") === null; vertaaString2("a b","a c") === "Ero riveissä 1: a b ja a c" vertaaString2(null,null) === null; vertaaString2(null," ") === "1. on null"; vertaaString2(" ",null) === "2. on null";
-
vertaaString
public static java.lang.String vertaaString(java.lang.String ss1, java.lang.String ss2)
Verrataan kahta tekstitiedoston kaltaista merkkijonoa ja heti kun tulee ensimmäinen poikkeava rivi palautetaan virhe. Lopussa olevat pelkät tyhjät rivit merkitsevät.- Parameters:
ss1
- 1. verrattava sisältöss2
- 2. verrattava sisältö- Returns:
- ensimmäinen eroavaisuus joka löytyy. Null jos ei eroja.
- Example:
#THROWS IOException #import java.io.*; #STATICIMPORT vertaaString("kissa\n","kissa") === "Rivi 2: 2. loppui ensin, 1. on "; vertaaString("","\n") === "Rivi 1: 1. loppui ensin, 2. on "; vertaaString("\n\n","\n") === "Rivi 3: 2. loppui ensin, 1. on "; vertaaString("\r\n","\n") === null; vertaaString("\r","\n") === null; vertaaString("\r\n","\n\n") === "Rivi 3: 1. loppui ensin, 2. on "; vertaaString("33 hiljaa 1 hiipii\r\nhyvä 33 tulee\r\n","33 hiljaa 1 hiipii\nhyvä 33 tulee\n") === null; vertaaString("a b","a c") === "Ero riveissä 1: a b ja a c" vertaaString((String)null,null) === null; vertaaString((String)null," ") === "1. on null"; vertaaString(" ",null) === "2. on null";
-
vertaaString
public static java.lang.String vertaaString(java.io.ByteArrayOutputStream bs, java.lang.String ss2)
Verrataan keskenään merkkijonotietovirtaa ja merkkijon sisältöä. Kakkki rivit (myös tyhjät) pitää olla samalla tavalla. bs tyhjennetään vertailun jälkeen.- Parameters:
bs
- verrattava merkkijonotietovirtass2
- merkkijono johon verrataan- Returns:
- null jos samat, muuten eroava rivi
- Example:
#import java.io.ByteArrayOutputStream; ByteArrayOutputStream bs = new ByteArrayOutputStream(); PrintStream out = new PrintStream(bs); out.println("kissa\n"); vertaaString(bs,"kissa") === "Rivi 2: 2. loppui ensin, 1. on "; vertaaString(bs,"\n") === "Rivi 1: 1. loppui ensin, 2. on "; out.println("\n\n"); vertaaString(bs,"\n") === "Rivi 3: 2. loppui ensin, 1. on "; out.println("\r"); vertaaString(bs,"\n\n") === null; out.println("33 hiljaa 1 hiipii\r\nhyvä 33 tulee"); vertaaString(bs,"33 hiljaa 1 hiipii\nhyvä 33 tulee\n") === null; out.print("a b"); vertaaString(bs,"a c") === "Ero riveissä 1: a b ja a c" vertaaString(bs,null) === "2. on null";
-
kirjoitaTiedosto
public static void kirjoitaTiedosto(java.lang.String nimi, java.lang.String sisalto) throws java.io.IOException
Kirjoitetaan tiedostoon sisältö- Parameters:
nimi
- tiedoston nimi johon kirjoitetaansisalto
- merkkijono joka kirjoitetaan tiedostoon- Throws:
java.io.IOException
- jos tiedosto ei aukea.- Example:
#THROWS IOException kirjoitaTiedosto("hiljaa1.txt", "33 hiljaa 1 hiipii\nhyvä 33 tulee\n"); tuhoaTiedosto("hiljaa1.txt"); kirjoitaTiedosto("ö:\\ö.ö", "33 hiljaa 1 hiipii\nhyvä 33 tulee\n"); #THROWS IOException
-
tuhoaTiedosto
public static void tuhoaTiedosto(java.lang.String nimi)
Tuhotaan tiedosto levyltä- Parameters:
nimi
- tuhottavan tiedoston nimi
-
-