我目前正在使用 JSP 生成一些 vCard。我发现一些平台无法识别这些生成的 vCard,除非它们的行由回车符 ( CR ) 分隔,并且 JSP 默认情况下似乎只使用换行符 ( LF ) 来分隔行。
你们知道有什么方法可以告诉 JSP 在每行之间包含一个 CR 吗?
我希望有人有线索,因为我在那里没有找到太多......
提前致谢!
如果您需要发出非 HTML 格式,那么您应该使用servlet而不是 JSP。这样,您就不会依赖于 JspServlet 和/或 appserver 详细说明如何生成输出。很多时候,您根本无法控制这一点。
使用 servlet 相对简单。创建一个类extends HttpServlet
并实现doGet()
如下方法:
response.setContentType("text/x-vcard");
response.setCharacterEncoding("UTF-8");
PrintWriter writer = response.getWriter();
writer.write("BEGIN:VCARD" + (char) 10);
// ...
将其映射到web.xml
ofurl-pattern
或/vcard/*
其他*.vcf
任何内容上,并使用请求 servletpath/pathinfo/params 根据 URL 动态生成输出。