我有一个.vox格式的音频文件,我希望通过java脚本将其转换为.mp3格式我已经获得了转换代码,但该代码在类文件中意味着在后面结束代码,但我不希望通过java脚本我想转换文件。请帮助我。
答案 0 :(得分:1)
使用NAudio.Wave使用NAudio下载Naudio dll(免费)
string convertedFileName = string.Format("{0}{1}", System.IO.Path.GetTempPath(), System.IO.Path.GetFileName(path).Replace(".vox", ".mp3"));
using (FileStream fileStream = new FileStream(path, FileMode.Open, FileAccess.Read))
{
using (var reader = new RawSourceWaveStream(fileStream, Mp3WaveFormat.CreateALawFormat(8000, 1)))
{
using (WaveStream convertedStream = WaveFormatConversionStream.CreatePcmStream(reader))
{
WaveFileWriter.CreateWaveFile(convertedFileName, convertedStream);
}
}
}
return File(convertedFileName, System.Net.Mime.MediaTypeNames.Application.Octet, System.IO.Path.GetFileName(convertedFileName));
答案 1 :(得分:0)
如果您的代码已经在Java语言中定义,并且您的类已定义,则可以使用http://jdk6.java.net/plugin2/liveconnect/ LiveConnect,如此帖子指出:
calling java methods in javascript code
正如帖子所指出的,这是一个例子:
Java代码:
public class MethodInvocation extends Applet {
public void noArgMethod() { ... }
public void someMethod(String arg) { ... }
public void someMethod(int arg) { ... }
public int methodReturningInt() { return 5; }
public String methodReturningString() { return "Hello"; }
public OtherClass methodReturningObject() { return new OtherClass(); }
}
public class OtherClass {
public void anotherMethod();
}
网页和JavaScript代码:
<applet id="app"
archive="examples.jar"
code="MethodInvocation" ...>
</applet>
<script language="javascript">
app.noArgMethod();
app.someMethod("Hello");
app.someMethod(5);
var five = app.methodReturningInt();
var hello = app.methodReturningString();
app.methodReturningObject().anotherMethod();
</script>
希望有所帮助:)