1

サーバーからクライアントに mp3 ファイルを送信して再生しようとしていますが、その方法がわかりません。私は Media および Media Player Java クラスを見てきましたが、プログラムの実行後にコンピューターに音楽を保存したくないため、それらがどのように機能するか、またはこの状況で使用するのが正しいかどうかをまだ理解していません。閉まっている。これは私の最初の質問なので、間違いがあれば申し訳ありませんが、学習します。

サーバー コード フラグメント:

if(number == songNumber)
{
  File song = files[i];

  byte[] bytearray  = new byte [(int)song.length()];
  FileInputStream fin = new FileInputStream(song);
  BufferedInputStream bin = new BufferedInputStream(fin);

  bin.read(bytearray,0,bytearray.length);
  OutputStream os = socket.getOutputStream();
  System.out.println("Sending Files...");

  os.write(bytearray,0,bytearray.length);
  os.flush();
  socket.close();
  bin.close();
  System.out.println("File transfer complete");
}

クライアント コード フラグメント:

InputStream is = socket.getInputStream();
FileOutputStream fos = new FileOutputStream("copy.doc");
BufferedOutputStream bos = new BufferedOutputStream(fos);

byte [] bytearray  = new byte [filesize];
bytesRead = is.read(bytearray,0,bytearray.length);
currentTot = bytesRead;

do 
{
  bytesRead = is.read(bytearray, currentTot, (bytearray.length-currentTot));
  if(bytesRead >= 0) currentTot += bytesRead;
} 
while(bytesRead > -1);
{
  bos.write(bytearray, 0 , currentTot);
}
4

2 に答える 2

1

Java 7 はいくつかの素敵なクラスを定義しているので、ここから

String bip = "bip.mp3";
Media hit = new Media(bip);
MediaPlayer mediaPlayer = new MediaPlayer(hit);
mediaPlayer.play();

非 Java 7 メソッドが必要な場合は、Andrew の言うとおりにして、MP3 SPI を使用してください。

于 2013-03-14T03:02:39.110 に答える
-1
import sun.audio.*;
import java.io.*;

public class playsound{
  public static void main(String[] args){
    try {
      FileInputStream fileau=new FileInputStream("D:/01.mid" );
      AudioStream as=new AudioStream(fileau);
      AudioPlayer.player.start(as);
    }
    catch (Exception e) {System.out.println("failed!");}
  }
}

これがあなたを助けることを願っています。

于 2013-03-14T02:50:54.363 に答える