Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 试图将文件中的内容放入表中_Java_Html_Jsp_Servlets - Fatal编程技术网

Java 试图将文件中的内容放入表中

Java 试图将文件中的内容放入表中,java,html,jsp,servlets,Java,Html,Jsp,Servlets,我有已经写入文件的信息,我正试图通过servlet将其输出到一个表中,但它并没有进入表中,而只是写入页面中 下面是我打开文件的代码,该文件已被制表符删除,因此我需要将每一行拉入,并将内容放在制表符之间的单元格中,但它只是在表格上方打印 // Create a file reader that to read the file FileReader fileReader = new FileReader(file); // Create the buffered rea

我有已经写入文件的信息,我正试图通过servlet将其输出到一个表中,但它并没有进入表中,而只是写入页面中

下面是我打开文件的代码,该文件已被制表符删除,因此我需要将每一行拉入,并将内容放在制表符之间的单元格中,但它只是在表格上方打印

     // Create a file reader that to read the file
    FileReader fileReader = new FileReader(file);

    // Create the buffered reader stream
    BufferedReader bufferedReader = new BufferedReader(fileReader);

    // Print the table header for of the survey results
    out.println("<label> Here are the results of the survey up to now: </label>");
    out.println("<table border='1'>");
    out.println("<tr><th><b>Date/time</b></th>");
    out.println("<th><b>Animal</b></th>");
    out.println("<th><b>Relative</b></th>");
    out.println("<th><b>Color</b></th>");
    out.println("<th><b>Tv Show</b></th>");
    out.println("<th><b>Actor</b></th></tr>");

    // Print each record
    String line;
    while ((line = bufferedReader.readLine()) != null) {
        String[] values = line.split("\t");
        out.println("<tr>");
        for (String value : values) {
            out.println("<td>" + value + "</td");
        }
        out.println("</tr>");
    }
//创建一个文件读取器,用于读取文件
FileReader FileReader=新的FileReader(文件);
//创建缓冲读取器流
BufferedReader BufferedReader=新的BufferedReader(文件阅读器);
//打印调查结果的表格标题
println(“以下是到目前为止的调查结果:”);
out.println(“”);
out.println(“日期/时间”);
out.println(“动物”);
out.println(“相对”);
out.println(“颜色”);
out.println(“电视节目”);
out.println(“演员”);
//打印每条记录
弦线;
而((line=bufferedReader.readLine())!=null){
String[]value=line.split(“\t”);
out.println(“”);
for(字符串值:值){
out.println(“+value+”
我建议您用JSP/HTML编写表示逻辑,而不是将业务逻辑与Servlet中的用户界面混合在一起

只需在JSP中移动HTML代码,将列表从Servlet传递到JSP,并使用&JSP表达式语言在JSP中迭代它

注意:不要忘记关闭Servlet中的资源,或者使用
try finally
阻塞或使用


示例代码: Servlet:(使用Java7和try-with-resources语句)

try(FileReader FileReader=newfilereader(文件)){
try(BufferedReader BufferedReader=新的BufferedReader(文件阅读器)){
列表=新的ArrayList();
字符串行=null;
而((line=bufferedReader.readLine())!=null){
String[]value=line.split(“\t”);
列表。添加(值);
}
setAttribute(“列表”,列表);
getRequestDispatcher(“xyz.jsp”).forward(请求,响应);
}
}
JSP:

以下是到目前为止的调查结果:
日期/时间
动物
相对的
颜色
电视节目
演员
${item}

这看起来确实是一个很好的选择,在这种情况下,我需要将它放在servlet中。很抱歉,我不理解它。为什么它不是一个选择?请您再解释一下,好吗?请看一下专家们发现的。
try(FileReader fileReader = new FileReader(file)){
    try(BufferedReader bufferedReader = new BufferedReader(fileReader)){
        List<String[]> list = new ArrayList<String[]>();

        String line = null;
        while ((line = bufferedReader.readLine()) != null) {
            String[] values = line.split("\t");
            list.add(values);
        }

        request.setAttribute("list", list);
        request.getRequestDispatcher("xyz.jsp").forward(request, response);  
    }
}
<label> Here are the results of the survey up to now: </label>
<table border='1'>
    <tr>
        <th><b>Date/time</b></th>
        <th><b>Animal</b></th>
        <th><b>Relative</b></th>
        <th><b>Color</b></th>
        <th><b>Tv Show</b></th>
        <th><b>Actor</b></th>
    </tr>
    <c:forEach items="${list}" var="array">
        <tr>
            <c:forEach items="${array}" var="item">
                <td>${item}</td>
            </c:forEach>
        </tr>
    </c:forEach>
</table>