用 JSP 实现对文件的相关操作
前段时间一直忙着作业,实验,动手的时间真是少之又少,今天终于可以继续和大家分享关于 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 实现对文件的相关操作的更多相关文章
- 关于C#资源文件的相关操作
关于资源文件的相关操作. //1.比较常见的有获取资源文件对应的文件流,然后转换到相对应的文件 //比较典型的做法是通过代码程序集加载指定资源 //如下通过Assembly的静态方法GetExecut ...
- java文件夹相关操作 演示样例代码
java文件夹相关操作 演示样例代码 package org.rui.io; import java.io.File; import java.io.FilenameFilter; import ja ...
- Oracle 参数文件及相关操作介绍
Oracle 参数文件及相关操作介绍 by:授客 QQ:1033553122 1.服务器参数文件 服务器参数文件是一个二进制文件,作为初始化参数的存储仓库.实例运行时,可用ALTER SYSTEM来改 ...
- Java IO_001.File类--文件或文件夹相关操作
Java IO之File对象常用操作 File类:用于文件或文件夹或网址相关联的操作.可以关联或不关联文件(即关联不存在的文件).构造函数有: public File(String pathname) ...
- python文件的相关操作
python 目录 python 1.python文件的介绍 使用文件的目的 Python文件的类型主要有两种:文本文件和二进制文件. 操作文件的流程主要有三步:打开-操作-关闭操作. 2.文件的打开 ...
- plist文件的相关操作
本文概要 1.plist文件的简介 2.在Xcode中创建plist文件 3.在Xcode中将plist文件转换成数组或者字典对象 4.将数组或者字典对象转换成plist文件并且存储 详细介绍 1.p ...
- linux基础——关于chmod用户权限和文件的相关操作
第一部分:1) 新建用户natasha,uid为1007,gid为555,备注信息为“master” 操作:useradd natasha新建natasha:修改uid是,usermod -u 100 ...
- Day 07 文件的相关操作
文件初始: 文件的三要素: path:文件的路径 mode:r w r+ w+ a encoding: 编码方式 # 打开一个文件的方法 f1 = open('e:\echo.txt', encodi ...
- c++ 文件位置相关操作
教学内容: l 文件定位操作 l fgetpos定位 l fsetpos设定位置 l 文件结束判断函数feof 一.文件定位操作 在C语言标准库里 获取文件位置的函数有ftell和fge ...
随机推荐
- Log4net入门(ASP.NET MVC 5篇)
在前4篇Log4net入门文章中,我们讲述了log4net的一些简单用法,在这一篇中我们主要讲述如何在ASP.NET MVC 5项目中将日志信息写入SQL Server数据库中. 一.创建最简单的AS ...
- niginx代理配置
常用关键词:rewrite.proxy_pass location ^~ /address/ { proxy_set_header Host xx.sohu.com; #设置header proxy_ ...
- 跨域之jsonp
我们都知道使用<script>标签可以引入外部的JS文件,即使这个JS文件来自于其他的网站,比如我们引用存放在网络服务器上的jQuery框架.在这个过程中,我们已经实现跨域访问.像< ...
- 联想 Thinkpad X230 SLIC 2.1 Marker
等了好久,终于等到了 X230 的 SLIC 2.1 的 Marker !特发帖备份... 基本情况 笔记本:Lenovo X230(i5+8G+500G) 操作系统:Windows 7 Pro x6 ...
- linux终端指令总结
一直没机会进行linux指令的系统学习,但是工作中总能遇到通过指令操作文件或数据库的情况,总不能一味地依赖后端开发者的帮忙.上任领导说过,要是在同一个地方跌倒,那么你就是傻子.我可不想成为傻子,so, ...
- C# 高效编程笔记2
C# 高效编程笔记2 1.理解GetHashCode()的陷阱 (1)作用:作为基于散列集合定义键的散列值,如:HashSet<T>,Dictionary<K,V>容器等 (2 ...
- C# 高效编程笔记1
C# 高效编程笔记1 1.使用属性而不是可访问的数据成员 (1).NET Framework中的数据绑定类仅支持属性,而不支持共有数据成员 (2)属性相比数据成员更容易修改 2.用运行时常量(read ...
- 自己动手写计算器v1.0
今天突发奇想,想着看了还几个设计模式了,倒不如写点东西来实践它们.发现计算器这种就比较合适,打算随着设计模式的学习,会对计算器不断的做改进. 包括功能的增加和算法的改进.初学者难免犯错,希望大家不吝指 ...
- 怎么解决tomcat占用8080端口问题
怎么解决tomcat占用8080端口问题 相信很多朋友都遇到过这样的问题吧,tomcat死机了,重启eclipse之后,发现 Several ports (8080, 8009) requir ...
- go-使用 unsafe 修改 struct 中的 field 的值
以下是方法,不要纠结原理,等东西积累多了,你才有能力纠结原理: 首先,你需要有一个这样的函数,这是在 nsq 的源码里直接抄过来的: func unsafeValueOf(val reflect.Va ...