使用Java从MS Server 2005检索文件
我试图做的是,当用户点击带有正确参数的链接时,系统将从MS Server 2005 db检索文件并将其输出给用户。具体来说,我以varbinary数据类型存储了一个音频文件,现在我有了检索音频文件的ID,但我不知道为用户输出它的Java命令是什么 我的代码是用Java编写的,我试图在这里搜索类似的主题,但没有成功。感谢您的帮助 谢谢使用Java从MS Server 2005检索文件,java,database,audio,sql-server-2005,Java,Database,Audio,Sql Server 2005,我试图做的是,当用户点击带有正确参数的链接时,系统将从MS Server 2005 db检索文件并将其输出给用户。具体来说,我以varbinary数据类型存储了一个音频文件,现在我有了检索音频文件的ID,但我不知道为用户输出它的Java命令是什么 我的代码是用Java编写的,我试图在这里搜索类似的主题,但没有成功。感谢您的帮助 谢谢 -Bao这里有一个下载文件的例子,可能会有帮助: 也许你可以试着把它和你的链接处理程序结合起来。我想出来了。这就是为我解决问题的方法。基本上我必须使用javax.
-Bao这里有一个下载文件的例子,可能会有帮助:
也许你可以试着把它和你的链接处理程序结合起来。我想出来了。这就是为我解决问题的方法。基本上我必须使用javax.sound.sampled.*API。以下是我所做的:
InputParameters parameters = parts.getParameters();
int audioFileID = parameters.getIntParameter("audiofileID");
//Retrieves Audio File
AudioFile audioFile = CallManager.getAudioFile(audioFileID);
InputStream is = new ByteArrayInputStream(audioFile.getAudio());
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(is);
ServletOutputStream out = response.getOutputStream();
ByteArrayOutputStream byteOutputStream = new ByteArrayOutputStream();
AudioFormat format = audioInputStream.getFormat();
audioInputStream = AudioSystem.getAudioInputStream(format, audioInputStream);
}
AudioSystem.write(audioInputStream,javax.sound.sampled.AudioFileFormat.Type.WAVE,byteOutputStream);
这是一个web应用程序还是客户端应用程序中的链接?请发布您迄今为止所做的工作。