检查Java中是否存在图像

时间:2015-10-20 12:04:43

标签: java file-io

我提到了Q&A,但我无法做我想做的事。

如果图像的路径存在,我想显示图像,如果图像路径不存在,我想显示其他图像。所以我这样做了:

<% String filePath = photoPath + nom.toLowerCase().replace(' ', '_') +"_"+prenom.toLowerCase().replace(' ', '_') + ".jpg";
   Path path = Paths.get(filePath);
   if(Files.exists(path)) { 
 %>
 <img name="" src="<%=filePath %>" width="96" height="120" alt=" Photographie de <%=prenom%> <%=nom%>">
 <% }
 else { %>
    <%=filePath %>
    <img name="" src="<%=filePath %>" width="96" height="120" alt=" Photographie de <%=prenom%> <%=nom%>">
 <%
 }
%>

除了我在if中显示路径和图片外,我在elseelse中尝试了相同的操作。我的输出是else语句,因此不应显示我的图像,但会显示图像。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

问题是filePath适用于img-src,这是一个相对于Web应用程序根文件夹的路径。对于文件系统路径,存在getRealPath()

<%
    String filePath = photoPath + nom.toLowerCase().replace(' ', '_')
        +"_"+prenom.toLowerCase().replace(' ', '_') + ".jpg";
    Path path = Paths.get(request.getServletContext().getRealPath(filePath));
    if (Files.exists(path)) { 
 %>