Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
338 views
in Technique[技术] by (71.8m points)

java - How to dynamically set header value in JSP

I have a JSP file which creates an Excel document.

I want to dynamically set the name of the file to be downloaded.

This is how I set the file name to "test.xsl":

<% response.setContentType("application/vnd.ms-excel"); 
   response.setHeader("Content-Disposition","attachment; filename=" + "test.xsl" ); 
%>

How can I set the file name to be test-${today's date}.xsl ( i.e. test-20100805.xsl ) ?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
String fname = MessageFormat.format( 
    "test-{0,date,yyyyMMdd}.xsl", new Object [] { new Date() } );
response.setHeader("Content-Disposition","attachment; filename=" + fname );

I think this should work for you.

The text in the braces tells the MessageFormat class to insert value 0 from the given array, format it as a date using the format yyyyMMdd (e.g. 20161231 for Dec 31st 2016).


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...