Java 如何获取数据inputstream并写入上传到服务器端的相同类型的文件?

Java 如何获取数据inputstream并写入上传到服务器端的相同类型的文件?,java,file,file-upload,file-io,inputstream,Java,File,File Upload,File Io,Inputstream,我想从inputstream读取数据,并使用Java(@FormDataParam(“fileupld”)inputstream in)将数据写入同一类型的文件 假设上传的文件是.txt那么我需要写入.txt文件, 如果是音频,则需要写入音频文件, 如果是图像,则需要写入图像, 如果是.doc,则需要写入.doc等 我的代码应该接受任何类型的文件,并写入其适当的类型 有人能帮我吗?当您这样打开时,为什么不将扩展名存储在变量中: String extension = FilenameUtils.g

我想从inputstream读取数据,并使用Java(
@FormDataParam(“fileupld”)inputstream in
)将数据写入同一类型的文件

假设上传的文件是
.txt
那么我需要写入
.txt
文件, 如果是
音频
,则需要写入
音频
文件, 如果是
图像
,则需要写入
图像
, 如果是
.doc
,则需要写入
.doc

我的代码应该接受任何类型的文件,并写入其适当的类型


有人能帮我吗?

当您这样打开时,为什么不将扩展名存储在变量中:

String extension = FilenameUtils.getExtension(inputFile);
FilenameUtils
是apache commons io库的一部分。然后,在准备写入文件时,使用扩展名变量创建新文件:

File file = new File("C:/files/output." + extension);
DataOutputStream stream = new DataOutputStream(new FileOutputStream(file));