jsp 实验20

三、源代码以及执行结果截图:

NewFile.jsp

<%@ page import = "java.io.*" %>

<%@ page contentType="text/html" %>

<%@ page pageEncoding = "utf-8" %>

<jsp:useBean id="english" class ="web.EnglishBean" scope="request"/>

<style>

   #tom{

      font-family:宋体;font-size:22;color:blue 

   }

</style>

<HTML>

<body id="tom" bgcolor="#ffccff">

<form action="readFile" id="tom" method="post">

选择一篇课文:<br>

<%  

File f = new File(".");

String jspPage=request.getServletPath();

String webDir = request.getContextPath();

jspPage =jspPage.substring(1);

webDir = webDir.substring(1);

String path = f.getAbsolutePath();

int index = path.indexOf("bin");

String webRoot = request.getRealPath("/");

String filePath = webRoot + "/englishText";

File fileDir=new File(filePath);

String name [] = fileDir.list();

%>  

<select id= tom name="fileName" size =1>

<%  

for(int i=0;i<name.length;i++){

%>    

<option selected value='<%=name[i]%>'/><%=name[i]%>

<% 

 }

%>  

</select> 

<input type=hidden name='filePath' value='<%=filePath%>' />

<br><input type=submit id=tom value="学习" /><br>

<textArea id="tom" rows="15" cols="80">

<%=english.getFileContent()%>

</textArea><br>

<% 

if(english.getFileName().length()>0) {

%><br>

<%=english.getFileAudio()%>:<br>

<embed src ='englishAudio/<%=english.getFileAudio()%>' height="56" autostart='false'>

</embed>

<%}

%>

</form>

</body>

</HTML>

EnglishBean.java

package web;

public class EnglishBean {

   public String fileName="";

   public String fileContent="";

   public String fileAudio;

   public void setFileName(String str){

      fileName=str;

   }

   public String getFileName(){

      return fileName;

   }

   public void setFileContent(String str){

      fileContent=str;

   }

   public String getFileContent(){

      return fileContent;

   }

   public void setFileAudio(String str){

      fileAudio = str;

   }

   public String getFileAudio(){

      return fileAudio;

   }

}

ReadFile_Servlet.java

package handle;

import web.EnglishBean;

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

public class eadFile_Servlet extends HttpServlet{

   public void init(ServletConfig config) throws ServletException{

      super.init(config);

   }

   public void service(HttpServletRequest request,HttpServletResponse response)throws                                               ServletException,IOException{

      EnglishBean fileBean=new EnglishBean();

      request.setAttribute("english",fileBean);

      String fileContent="";

      request.setCharacterEncoding("utf-8");

      String filePath=request.getParameter("filePath");

      String fileName=request.getParameter("fileName");

      if(filePath==null||fileName==null)

         return;

      if(fileName.length()==0||fileName.length()==0)

         return;

      fileBean.setFileName(fileName);

      String audioFileName =

      fileName.substring(0,fileName.lastIndexOf("."))+".mp3";

      fileBean.setFileAudio(audioFileName);

      try{  File f=new File(filePath,fileName);

            RandomAccessFile randomAccess = new RandomAccessFile(f,"r");

            String s=null;

            StringBuffer stringbuffer=new StringBuffer();

            while ((s=randomAccess.readLine())!=null){

                byte b[] = s.getBytes("iso-8859-1");

                stringbuffer.append("\n"+new String(b));

            }

            fileContent=new String(stringbuffer);

            fileBean.setFileContent(fileContent);

      }

      catch(Exception exp){

            fileContent ="读取失败"+exp.toString();

      }

      RequestDispatcher dispatcher=

      request.getRequestDispatcher("NewFile.jsp");

      dispatcher.forward(request, response);

    }

}

web.xml

<web-app>

    <servlet>

        <servlet-name>readFile</servlet-name>

        <servlet-class>handle.eadFile_Servlet</servlet-class>

    </servlet>

    <servlet-mapping>

        <servlet-name>readFile </servlet-name>

        <url-pattern>/readFile </url-pattern>

    </servlet-mapping>

</web-app>

                                           (空间不够,可加附页)

效果图展示

相关推荐

  1. 21jsp指令

    2024-06-14 01:02:03       10 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-14 01:02:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-14 01:02:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-14 01:02:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-14 01:02:03       18 阅读

热门阅读

  1. MySQL CHECK约束

    2024-06-14 01:02:03       7 阅读
  2. Android基础-运行时权限

    2024-06-14 01:02:03       4 阅读
  3. 013-Linux交换分区管理

    2024-06-14 01:02:03       6 阅读
  4. ios CCDelete.m

    2024-06-14 01:02:03       5 阅读
  5. 项目经验:别啥事都跟甲方讲

    2024-06-14 01:02:03       5 阅读