import java.awt.*; import java.awt.event.*; import java.io.*; import javax.sound.sampled.*; public class Digiheliredaktor2 extends Panel implements ActionListener{ byte[] andmed; AudioFormat formaat; Button kopeeri=new Button("Kopeeri"); Button tyhjenda=new Button("Vaikseks"); Margistusala1 ala=new Margistusala1(); Button lae=new Button("Lae fail"); TextField tfLae=new TextField(20); Button salvesta=new Button("Salvesta fail"); TextField tfSalvesta=new TextField(20); public Digiheliredaktor2(){ Panel p=new Panel(); p.add(tyhjenda); p.add(kopeeri); Panel alapaneel=new Panel(); alapaneel.add(lae); alapaneel.add(tfLae); alapaneel.add(salvesta); alapaneel.add(tfSalvesta); setLayout(new BorderLayout()); add(p, BorderLayout.NORTH); add(ala, BorderLayout.CENTER); add(alapaneel, BorderLayout.SOUTH); kopeeri.addActionListener(this); tyhjenda.addActionListener(this); lae.addActionListener(this); salvesta.addActionListener(this); } public void actionPerformed(ActionEvent e){ if(e.getSource()==lae){laeFail(); } if(e.getSource()==lae){salvestaFail(); } } public void laeFail(){ try{ AudioInputStream sisse=AudioSystem.getAudioInputStream(new File(tfLae.getText())); ByteArrayOutputStream malu=new ByteArrayOutputStream(); int nr=sisse.read(); while(nr!=-1){ //loetakse voo sisu mälupuhvrisse malu.write(nr); nr=sisse.read(); } andmed=malu.toByteArray(); formaat=sisse.getFormat(); }catch(Exception viga){ viga.printStackTrace(); } } public void salvestaFail(){ try{ AudioInputStream ais=new AudioInputStream( new ByteArrayInputStream(andmed), formaat, andmed.length ); AudioSystem.write(ais, AudioFileFormat.Type.WAVE, new File(tfSalvesta.getText())); }catch(Exception viga){ viga.printStackTrace(); } } public static void main(String[] argumendid){ Frame f=new Frame(); f.add(new Digiheliredaktor2()); f.setSize(400, 300); f.setVisible(true); } }