public boolean puraTiedosto() throws FileNotFoundException, IOException, ClassNotFoundException {
		FileInputStream fis = new FileInputStream(lahde);
		BufferedInputStream bis = new BufferedInputStream(fis);

		byte[] luetutKoodiTavut = new byte[purkuBlokkiKoko];
		
		//FileInputStream fis2 = new FileInputStream(lahde.getAbsolutePath()+ ".ser");
		ObjectInputStream ois = new ObjectInputStream(fis);
		
		BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(kohde));
		
		koodistaMerkki = (HajautusTaulukko)ois.readObject();
		Long kohdePituus = (Long)ois.readObject();
		System.out.println("Puretaan " + kohdePituus + " tavua dataa...");
		
		StringBuilder lohkonKoodiMerkit = new StringBuilder();
		int tavujaLuettu = 0;
		long tavujaKirjoitettu = 0;
		
		StringBuilder lohkonSelkoTeksti;
		StringBuilder nykyisenMerkinKoodi = new StringBuilder();

		// Luetaan pakattua dataa tiedostosta lohkon koon verran kerrallaan
		while ((tavujaLuettu = bis.read(luetutKoodiTavut))>0) {
			lohkonSelkoTeksti = new StringBuilder();
			lohkonKoodiMerkit = nykyisenMerkinKoodi;
			nykyisenMerkinKoodi = new StringBuilder();
			//Kydn lohkon jokainen tavu lpi
			for (int i = 0; i < tavujaLuettu; i++) {
				// kydn jokaisen tavun jokainen bitti lpi, ja listn puskuriin
				for (int j = 7; j>=0; j--) {
					if ((luetutKoodiTavut[i] & (1 << j)) != 0)
						lohkonKoodiMerkit.append("1");
					else
						lohkonKoodiMerkit.append("0");
				}
			}
			char[] lohkonKoodiMerkitTaulukko = lohkonKoodiMerkit.toString().toCharArray();
	
			for (int k = 0; k<lohkonKoodiMerkitTaulukko.length; k++) {
				if (tavujaKirjoitettu < kohdePituus) {
					nykyisenMerkinKoodi.append(lohkonKoodiMerkitTaulukko[k]);
					Object o = koodistaMerkki.annaArvo(nykyisenMerkinKoodi.toString());
					if (o != null) {
						lohkonSelkoTeksti.append(o.toString());
						nykyisenMerkinKoodi = new StringBuilder();
						tavujaKirjoitettu++;
					}
				}
			}
			bos.write(lohkonSelkoTeksti.toString().getBytes());
			
		}
		bos.flush();
		bis.close();
		fis.close();
		bos.close();
		return false;
	}