Java 将文件临时存储在tomcat的side temp文件夹中

Java 将文件临时存储在tomcat的side temp文件夹中,java,tomcat,temp,Java,Tomcat,Temp,你能告诉我任何Java代码,我可以用来在Tomcat的临时文件夹中存储一个文件,这样一旦使用(下载)它就会被自动删除吗?在jsp中,这一行给出临时文件夹路径,你可以用这个路径来存储文件有很多方法可以做到这一点,您应该探索CATALINA\u HOME环境变量,因为它指向Tomcat安装目录 更新 *试试这个:* 处理完成后,您可以按常规方式将其删除file.delete() 您需要确保环境变量CATALINA\u HOME指向Tomcat base目录。第一,您的问题很模糊,然后我们不提供代码,

你能告诉我任何Java代码,我可以用来在Tomcat的临时文件夹中存储一个文件,这样一旦使用(下载)它就会被自动删除吗?

在jsp中,这一行给出临时文件夹路径,你可以用这个路径来存储文件

有很多方法可以做到这一点,您应该探索
CATALINA\u HOME
环境变量,因为它指向Tomcat安装目录

更新 *试试这个:*

处理完成后,您可以按常规方式将其删除
file.delete()


您需要确保环境变量
CATALINA\u HOME
指向Tomcat base目录。

第一,您的问题很模糊,然后我们不提供代码,您编写自己的代码,然后询问您在哪里卡住了。欢迎使用。您想将其存储在临时文件夹中的图像中???@SuppressWarnings(“限制”)BASE64Decoder decoder=new BASE64Decoder();//将编码字符串解码为原始字节arraySystem.out.println(“in try”);System.out.println(“imagestring”+imagestring);字节[]已解码=解码器.解码缓冲区(imageString);System.out.println(“图像”+解码);BuffereImage image=ImageIO.read(新的ByteArrayInputStream(已解码));这是我用来将字符串转换为bufferImage的代码,我想将该图像存储到tomcat的temp文件夹中,一旦使用它,它将自动删除file file=new file(“temp.png”);写入(图像,“png”,文件);字符串路径=file.getCanonicalPath();System.out.println(“路径:+path”);JSONObject obj=JSONFactoryUtil.createJSONObject();obj.put(“路径”,路径);response.getWriter().write(obj.toString());上面的代码是我用来将该图像存储在CanonicalPath中的,我可以使用该图像,但一旦使用该图像,我必须手动删除该图像,因此,我想暂时将该图像存储在tomcat的临时文件夹中。请帮助我是的,我想将该图像存储在tomcat的临时文件夹中。有人要求将该文件存储在tomcat文件夹中。在JSP中编写代码片段是一个坏习惯。java文件中也可以使用相同的属性,它还提供tomcat temp folderHi的路径。我得到这个异常java.io.FileNotFoundException:D:\IWM\Softwares\eclipse\null\temp\yourimagename.jpg(系统找不到指定的路径)。您的
CATALINA\u HOME
值设置为什么?或者,您可以定义自己的环境变量。它应该指向Tomcat目录。示例
C:\apache-tomcat-7.0.39
。按照我的指示调试代码(请参见编辑)
System.out.println(f.getAbsolutePath())打印出来的那行是什么?这不是为了解决问题,而是为了让您了解应用程序试图读取的位置。不,我告诉您我定义了环境变量,但打印D:\IWM\Softwares\eclipse\null\temp而不是tomcat temp folder这一行不起作用。您的环境变量是错误的。将其正确设置为指向Tomcat文件夹,如上图所示。重新启动电脑以选择新的env变量,它将正常工作。我的机器上运行着相同的示例代码。工作得很好。
@SuppressWarnings("restriction")
 BASE64Decoder decoder = new BASE64Decoder(); // Decode encoded string into original byte array
System.out.println("in try "); 
System.out.println("imagestring "+ imageString);
byte[] decoded = decoder.decodeBuffer(imageString);
System.out.println("image"+ decoded); 
BufferedImage image = ImageIO.read(new ByteArrayInputStream(decoded));

File f = new File(System.getenv("CATALINA_HOME") + "/temp");//TomcatHome director/tempfolder
System.out.println(f.getAbsolutePath());//debug like this
if(!f.exists()){
f.mkdir();//make temp folder if it does not exist
}
ImageIO.write(image, "jpg",new File(f.getAbsolutePath() + "/yourimagename.jpg"));//write image to to the temp folder
}
//do some other Processing
File file = new File(f.getAbsolutePath() + "/yourimagename.jpg");
if(file.exists()){
file.delete();
 }