Hallo
Das Programm soll eine Wav-Datei einlesen und die einzelnen Chunks etc lesen und anzeigen. Habe hier folgenden Code zusammengeschustert:
Wenn ich das complimiere wird mir die Ausgabe (System.out.println....) nicht angezeigt. Warum? Wäre das Prog sonst i.O.?
Danke für eure Hilfe
Grüße
Das Programm soll eine Wav-Datei einlesen und die einzelnen Chunks etc lesen und anzeigen. Habe hier folgenden Code zusammengeschustert:
Java:
import java.io.*;
import java.util.*;
import java.io.RandomAccessFile;
import java.io.File;
class wavReader {
//Variablen
private String myWav;
private long myChunkSize;
//public String format;
//Buffer
public byte[] myData;
//String setzen
public String getWav()
{
return myWav;
}
public void setWav (String newWav)
{
myWav = newWav;
}
//leerer Constructor
public wavReader()
{
myWav = "";
}
//Constructor nimmt Wave Pfad auf
public wavReader(String tmpWav)
{
myWav= tmpWav;
}
//Wav-File einlesen
public boolean read()
{
RandomAccessFile wavFile=null;
myData = null;
byte[] tmpLong = new byte[4];
byte[] tmpInt = new byte[2];
try {
wavFile = new RandomAccessFile("ton.wav","rw");
System.out.println("Reading wav file...");
String chunkID = "" + (char)wavFile.readByte() + (char)wavFile.readByte() + (char)wavFile.readByte() + (char)wavFile.readByte();
wavFile.read(tmpLong); //ChunkSize auslesen
myChunkSize = byteArrayToLong(tmpLong);
String format = "" + (char)wavFile.readByte() + (char)wavFile.readByte() + (char)wavFile.readByte() + (char)wavFile.readByte();
//Ausgabe was eben gelesen wurde
System.out.println("chunkID:" + chunkID + " chunk1Size:" + myChunkSize + " format:" + format);
wavFile.close();
}
catch(Exception e) {
}
return true;
}
// these two routines convert a byte array to an unsigned integer
public static long byteArrayToLong(byte[] b)
{
int start = 0;
int i = 0;
int len = 4;
int cnt = 0;
byte[] tmp = new byte[len];
for (i = start; i < (start + len); i++)
{
tmp[cnt] = b[i];
cnt++;
}
long accum = 0;
i = 0;
for ( int shiftBy = 0; shiftBy < 32; shiftBy += 8 )
{
accum |= ( (long)( tmp[i] & 0xff ) ) << shiftBy;
i++;
}
return accum;
}
public static void main(String args[]) {
//System.out.println("Reading wav file...\n"); zum Test
}
}
Wenn ich das complimiere wird mir die Ausgabe (System.out.println....) nicht angezeigt. Warum? Wäre das Prog sonst i.O.?
Danke für eure Hilfe
Grüße
Zuletzt bearbeitet: