前段时间一直忙着作业,实验,动手的时间真是少之又少,今天终于可以继续和大家分享关于 JSP 的学习心得。

简单总结一下吧:

  • JSP 理论性很强,感觉就是纯语法。
  • 我更偏向于实际编写代码,这样更容易理解高深的理论。
  • 我不喜欢读死书,死读书,特别喜欢边看书,边敲代码,屡败屡战才是王道。

下面直接上干货吧,提供超详细代码及结果展示,欢迎大家与我交流!

如何建工程、文件我就不在这里多说了,相信大家都在前面的分享里学会了,我们直接进入本次学习成果的核心代码部分。

  • 首先可以先放一个整体的界面,就像做一个目录一样,暂且命名为file_index.jsp
 <%@page contentType="text/html"  pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset="UTF-8">
<title>文件操作</title>
</head>
<body>
<table width="430" border="3" align="center" cellpadding=10>
<td align="center">
<strong>
<font face="arial" size=+2>JSP文件操作示例</font>
</strong>
</td>
</table>
<br> <table width="616" height="317" border=3 align="center" cellpadding=2 cellspacing=0 bgcolor="#c0c0c0">
<tr valign="baseline">
<td height="65">
<a href="mkdir.jsp">目录的新建与删除</a><br>
*************************************<br>
*在当前文件所在目录下判断目录 testdir 是否存在,如果不存在就执行新建目录 testdir 操作;如果存在则执行删除目录 testdir 操作。
</td>
</tr> <tr>
<td height="51">
<div align="left">
<a href="createnewfile.jsp">文件的新建与删除</a><br>
*************************************<br>
*在当前文件所在目录下判断文件 File.txt 是否存在,如果不存在就执行新建文件 File.txt 操作;如果存在则执行删除文件 File.txt 操作。
</div>
</td>
</tr> <tr>
<td height="20">
<a href="listfiles.jsp">显示文件夹下的文件</a><br>
*************************************<br>
*显示当前文件所在目录下的文件列表。
</td>
</tr> <tr>
<td height="50">
<a href="writefile.jsp">写入文件内容</a><br>
*************************************<br>
*在当前文件所在目录下对断文件 File.txt 执行文字内容的写入操作。
</td>
</tr> <tr>
<td height="51">
<a href="readfile.jsp">读取文件内容</a><br>
*************************************<br>
*采用 read() 和 readLine() 两种方法在当前文件所在目录下对文件 File.txt 执行文字内容的读取操作。该项操作需要目录下存在文件 File.txt ,否则会出现文件找不到错误。
</td>
</tr>
</table>
</body>
</html>
  • 然后分别将创建目录mkdir.jsp,创建文件creaternewfile.jsp,显示文件列表listfiles.jsp,写文件writefile.jsp,读文件readfile.jsp 通通逐一完成,这下全部编写就大功告成啦!

源码在这里:

 <%@    page  language="java" contentType="text/html; charset=UTF-8"%>
<%@ page import="java.io.*" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>创建目录</title>
</head>
<body>
<a href="file_index.jsp">返回</a>
<h3>目录的新建与删除示例演示结果</h3>
<hr>
<%
try{
String path = request.getRealPath("");
String subPath = path + "\\" + "testdir";
File m1 = new File(subPath);
if(m1.exists())
{
m1.delete();
out.println("在路径" + path + "下," + "文件夹 testdir 已经被删除!");
}
else
{
m1.mkdir();
out.println("在路径" + path + "下," + "文件夹 testdir 创建成功!");
}
}catch(Exception e){
out.println(e.toString());
}
%>
</body>
</html>

mkdir.jsp

 <%@    page language="java" contentType="text/html; charset=UTF-8"%>
<%@ page import="java.io.*" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>创建文件</title>
</head>
<body>
<a href="file_index.jsp">返回</a>
<h3>文件的新建与删除示例演示结果</h3>
<hr>
<%
try{
String path = request.getRealPath("");
File filename = new File(path, "File.txt");
if(filename.exists())
{
filename.delete();
out.println("在路径" + path + "下," + "文件File.txt已经被删除!");
}
else
{
filename.createNewFile();
out.println("在路径" + path + "下," + "文件File.txt创建成功!");
}
}catch(Exception e){
out.println(e.toString());
}
%>
</body>
</html>

creaternewfile.jsp

 <%@    page language="java" contentType="text/html; charset=UTF-8"%>
<%@ page import="java.io.*" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>显示文件夹下的文件</title>
</head>
<body>
<a href="file_index.jsp">返回</a>
<h3>显示文件夹下的文件示例演示结果</h3>
<hr>
<%
try{
String path = request.getRealPath("");
File f1 = new File(path);
File list[] = f1.listFiles();
out.println("路径" + path + "下的文件列表:<br>");
int i;
for(i=0;i<list.length;i++)
{
out.println(list[i].getName()+"<br>");
}
}catch(Exception e){
out.println(e.toString());
}
%>
</body>
</html>

listfiles.jsp

 <%@    page language="java" contentType="text/html; charset=UTF-8"%>
<%@ page import="java.io.*" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>写入文件内容</title>
</head>
<body>
<a href="file_index.jsp">返回</a>
<h3>写入文件内容示例演示结果</h3>
<hr>
<%
try{
String path = request.getRealPath("");
FileWriter fw = new FileWriter(path + "\\" + "File.txt");
fw.write("Hello,welcome to JSP!");
fw.write("希望本示例在JSP文件操作上能给大家提供帮助!");
fw.close();
out.println("文件内容写入成功,可返回执行读取文件内容查阅。");
}catch(Exception e){
out.println(e.toString());
}
%>
</body>
</html>

writerfile.jsp

 <%@    page language="java" contentType="text/html; charset=UTF-8"%>
<%@ page import="java.io.*" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>读取文件内容</title>
</head>
<body>
<a href="file_index.jsp">返回</a>
<h3>读取文件内容示例演示结果</h3>
<hr>
<%
try{
out.print("<B>---------------使用read()方法读取文件</B>"+"<br><br>");
String path = request.getRealPath("");
FileReader fr = new FileReader(path + "\\" + "File.txt");
//单个字节读取
int c = fr.read();
while(c!=-1)
{
out.print((char)c);
c = fr.read();
if(c == 13)
{
out.print("<br>");
fr.skip(1);
c = fr.read();
}
}
fr.close();
out.print("<br><br>"+"<B>-------------使用 readLine()方法读取文件</B>"+"<br><br>");
//使用readLine()读取
FileReader fr1 = new FileReader(path + "\\" +"File.txt");
BufferedReader br = new BufferedReader(fr1);
String br1 = br.readLine();
if(br1==null){
out.print("null");
}
while(br1!=null)
{
out.println(br1+"<br>");
br1 = br.readLine();
}
br.close();
fr1.close();
}catch(Exception e){
out.println(e.toString());
}
%>
</body>
</html>

readfile.jsp

  • 接着就是发布和测试啦!

  具体过程本来想截图说明的,但是小编技术太菜,总是达不到理想的结果,在此先跳过,等我再去研究一段时间……


  大家应该还是比较喜欢看到正确结果,对嘀,就是下面这样的啦!小编我是带着满满的成就感与幸福感在码字哟~

主页:

创建目录:

创建文件:

显示文件列表:

写文件:

读文件:

  这次的分享就到这里啦,希望有兴趣的朋友多多交流,不足之处敬请见谅,望各位不吝赐教,谢谢~

用 JSP 实现对文件的相关操作的更多相关文章

  1. 关于C#资源文件的相关操作

    关于资源文件的相关操作. //1.比较常见的有获取资源文件对应的文件流,然后转换到相对应的文件 //比较典型的做法是通过代码程序集加载指定资源 //如下通过Assembly的静态方法GetExecut ...

  2. java文件夹相关操作 演示样例代码

    java文件夹相关操作 演示样例代码 package org.rui.io; import java.io.File; import java.io.FilenameFilter; import ja ...

  3. Oracle 参数文件及相关操作介绍

    Oracle 参数文件及相关操作介绍 by:授客 QQ:1033553122 1.服务器参数文件 服务器参数文件是一个二进制文件,作为初始化参数的存储仓库.实例运行时,可用ALTER SYSTEM来改 ...

  4. Java IO_001.File类--文件或文件夹相关操作

    Java IO之File对象常用操作 File类:用于文件或文件夹或网址相关联的操作.可以关联或不关联文件(即关联不存在的文件).构造函数有: public File(String pathname) ...

  5. python文件的相关操作

    python 目录 python 1.python文件的介绍 使用文件的目的 Python文件的类型主要有两种:文本文件和二进制文件. 操作文件的流程主要有三步:打开-操作-关闭操作. 2.文件的打开 ...

  6. plist文件的相关操作

    本文概要 1.plist文件的简介 2.在Xcode中创建plist文件 3.在Xcode中将plist文件转换成数组或者字典对象 4.将数组或者字典对象转换成plist文件并且存储 详细介绍 1.p ...

  7. linux基础——关于chmod用户权限和文件的相关操作

    第一部分:1) 新建用户natasha,uid为1007,gid为555,备注信息为“master” 操作:useradd natasha新建natasha:修改uid是,usermod -u 100 ...

  8. Day 07 文件的相关操作

    文件初始: 文件的三要素: path:文件的路径 mode:r w r+ w+ a encoding: 编码方式 # 打开一个文件的方法 f1 = open('e:\echo.txt', encodi ...

  9. c++ 文件位置相关操作

    教学内容:  l  文件定位操作 l  fgetpos定位 l  fsetpos设定位置 l  文件结束判断函数feof   一.文件定位操作 在C语言标准库里 获取文件位置的函数有ftell和fge ...

随机推荐

  1. JavaScript的闭包

    1. 什么是闭包 通俗地讲,JavaScript 中每个的函数都是一个闭包,但通常意义上嵌套的函数更能够体现出闭包的特性,请看下面这个例子: var generateClosure = functio ...

  2. Lucene的评分(score)机制研究

    首先,需要学习Lucene的评分计算公式—— 分值计算方式为查询语句q中每个项t与文档d的匹配分值之和,当然还有权重的因素.其中每一项的意思如下表所示: 表3.5 评分公式中的因子 评分因子 描 述 ...

  3. Linux驱动开发—— of_property_read_u8

    在使用設備樹的時候, 有時會遇到下面的問題. 在設備樹中配置的屬性如下: fusb301,init-mode = <0x20>; 但是在驅動中讀出的卻是: rc = of_property ...

  4. jQuery源码学习感想

    还记得去年(2015)九月份的时候,作为一个大四的学生去参加美团霸面,结果被美团技术总监教育了一番,那次问了我很多jQuery源码的知识点,以前虽然喜欢研究框架,但水平还不足够来研究jQuery源码, ...

  5. 读书笔记--SQL必知必会10--分组数据

    10.1 数据分组 使用分组可以将数据分为多个逻辑组,对每个组进行聚集计算. 10.2 创建分组 使用SELECT语句的GROUP BY子句建立分组. GROUP BY子句必须出现在WHERE之后,O ...

  6. 【目录】JUC锁框架目录

    JUC锁框架的目录整理如下: 1. [JUC]JUC锁框架综述 2. [JUC]JDK1.8源码分析之LockSupport(一) 3. [JUC]JDK1.8源码分析之AbstractQueuedS ...

  7. C++程序员如何转Java

     C++程序员如何转Java 忙里偷闲,到了这个时间终于得空写一篇早想写的文章.其实本文的标题有些不太准确,C++程序员写Java代码不是说就非得转行写Java,抛弃C++,而只是多了一个选择而已.两 ...

  8. scrapy cookies:将cookies保存到文件以及从文件加载cookies

    我在使用scrapy模拟登录新浪微博时,想将登录成功后的cookies保存到本地,下次加载它实现直接登录,省去中间一系列的请求和POST等.关于如何从本次请求中获取并在下次请求中附带上cookies的 ...

  9. window下使用Redis Cluster部署Redis集群

    日常的项目很多时候都需要用到缓存.redis算是一个比较好的选择.一般情况下做一个主从就可以满足一些比较小的项目需要.在一些并发量比较大的项目可能就需要用到集群了,redis在Windows下做集群可 ...

  10. C#开发微信门户及应用(23)-微信小店商品管理接口的封装和测试

    在上篇<C#开发微信门户及应用(22)-微信小店的开发和使用>里面介绍了一些微信小店的基础知识,以及对应的对象模型,本篇继续微信小店的主题,介绍其中API接口的封装和测试使用.微信小店的相 ...