import java.io.*;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import sun.audio.AudioStream;
import sun.audio.ContinuousAudioDataStream;
class Test {
public native void cls();// 左方的native是通知Java这个函数会使用到外部函数
static {
System.loadLibrary("ClearScreen");
// 左方的代码代表我要载入clsTest.dll的动态链接
}
}
class PlayMusic implements Runnable {
public void run() {
GameMusicTest.playSingleMusic("D:/mianxiangduixiang/音乐19.wav");
}
}
class disPlay {
public static void show() {
BufferedReader br = null;
BufferedWriter bw = null;
boolean bool = true;
final Test a = new Test();
File file = null;
int fileNumble = 0;
while (bool) {
if (fileNumble < 10) {
file = new File(
"F:/aaa/TestBadApple/ASCII-BadApple-dqw19880428.blog.163.com.mkv000"
+ fileNumble + ".txt");
} else if (fileNumble < 100) {
file = new File(
"F:/aaa/TestBadApple/ASCII-BadApple-dqw19880428.blog.163.com.mkv00"
+ fileNumble + ".txt");
} else if (fileNumble < 1000) {
file = new File(
"F:/aaa/TestBadApple/ASCII-BadApple-dqw19880428.blog.163.com.mkv0"
+ fileNumble + ".txt");
} else if (fileNumble >= 1000 && fileNumble <= 6570) {
file = new File(
"F:/aaa/TestBadApple/ASCII-BadApple-dqw19880428.blog.163.com.mkv"
+ fileNumble + ".txt");
} else {
if (br != null) {
try {
br.close();
} catch (IOException e) {
System.out.println(e.toString());
}
}
if (bw != null) {
try {
bw.close();
} catch (IOException e) {
System.out.println(e.toString());
}
}
break;
}
try {
br = new BufferedReader(new FileReader(file));
bw = new BufferedWriter(new OutputStreamWriter(System.out));
String str = null;
while ((str = br.readLine()) != null) {
bw.write(str);
bw.newLine();
bw.flush();
}
} catch (IOException e) {
System.out.println(e.toString());
}
try {
Thread.sleep(1);
} catch (Exception e) {
}
a.cls();
fileNumble = fileNumble + 2;
}
}
}
class BadApple {
public static void main(String[] args) {
GameMusicTest.playSingleMusic("D:/mianxiangduixiang/badapple.mid");
PlayMusic pm = new PlayMusic();
Thread t = new Thread(pm);
t.start();
disPlay.show();
}
}
/**
* Copyright (C), 2006-2010, ChengDu info. Co., Ltd. FileName: Music.java
* 此类为音乐类,用于播放各种音乐
*
* @author ls
* @Date 2010-4-1
* @version 1.00
*/
class GameMusicTest extends Thread {
private static AudioStream play_music;
private static ContinuousAudioDataStream musicStream;
/**
* 播放单音音频
*
* @param musicFile
* 单音音频文件路径
*/
public static void playSingleMusic(String musicFile) {
FileInputStream fin = null;
try {
fin = new FileInputStream(musicFile);// 创建文件读入流
play_music = new sun.audio.AudioStream(fin);// 创建音频流
sun.audio.AudioPlayer.player.start(play_music);// 播放音乐
} catch (Exception e) {
System.out.println(e);
}
}
/**
* 循环播放音频
*
* @param musicFile
*/
public static void playLoopMusic(String musicFile) {
stopLoopMusic();
try {
FileInputStream musicInputStream = new FileInputStream(musicFile);
sun.audio.AudioStream play_Loopmusic = new sun.audio.AudioStream(
musicInputStream);
musicStream = new ContinuousAudioDataStream(
play_Loopmusic.getData());
sun.audio.AudioPlayer.player.start(musicStream);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* 停止播放循环音频
*/
public static void stopLoopMusic() {
if (musicStream != null) {
sun.audio.AudioPlayer.player.stop(musicStream);
try {
musicStream.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
/**
* 停止播放单音音频
*
*/
public static void stopSingleMusic() {
sun.audio.AudioPlayer.player.stop(play_music);
}
}