基于以下示例。我的计算机上的类位置是C:\ Users \ daniel \ Desktop \ Prototype2 \ src \ examples \ WavAppender.java
如果我将wav文件放在同一个示例目录中。如何更改以下代码?
import java.io.File;
import java.io.IOException;
import java.io.SequenceInputStream;
import javax.sound.sampled.AudioFileFormat;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
public class WavAppender {
public static void main(String[] args) {
String wavFile1 = "D:\\wav1.wav";
String wavFile2 = "D:\\wav2.wav";
try {
AudioInputStream clip1 = AudioSystem.getAudioInputStream(new File(wavFile1));
AudioInputStream clip2 = AudioSystem.getAudioInputStream(new File(wavFile2));
AudioInputStream appendedFiles =
new AudioInputStream(
new SequenceInputStream(clip1, clip2),
clip1.getFormat(),
clip1.getFrameLength() + clip2.getFrameLength());
AudioSystem.write(appendedFiles,
AudioFileFormat.Type.WAVE,
new File("D:\\wavAppended.wav"));
} catch (Exception e) {
e.printStackTrace();
}
}
}
答案 0 :(得分:0)
这取决于程序的执行位置,即执行目录。如果它是examples目录,那么你的.java文件就是它的简单:
new File("wavAppended.wav");
答案 1 :(得分:0)
您可以使用绝对或相对路径来访问您的文件。
大多数人会认为绝对不是必需的,甚至是有害的,因为它们很容易破坏你的程序。我的观点是它们更易于使用,您可以将它们作为确保程序运行的第一步。
无论如何绝对版本将是:
"C:\\Users\\daniel\\Desktop\\Prototype2\\src\\examples\\wav?.wav"
或
"C:/Users/daniel/Desktop/Prototype2/src/examples/wav?.wav"
相对路径
"examples\\wav?.wav"
或
"examples/wav?.wav"
因为您的根路径是"C:/Users/daniel/Desktop/Prototype2/src/"
答案 2 :(得分:0)
答案 3 :(得分:0)
将您的文件放在执行程序所在的目录中,文件名可以简单地
String wavFile1 = "wav1.wav";
答案 4 :(得分:0)
您可以使用相对路径
private String filename = "./src/examples/wav1.wav";