![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
文件操作(有异常处理)
荒--
这个作者很懒,什么都没留下…
展开
-
多文件压缩下载(直接写入本地某盘符、导出自定义路径)
场景一:将本地的多个文件(doc、jpg、txt、pdf)且文件名包含中文,打成压缩包后下载与某位置保存原始多个文件位于D盘下测试代码如下:package cn.tedu.test;import java.io.BufferedInputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;impo原创 2020-09-03 14:22:02 · 232 阅读 · 0 评论 -
java 备份数据库
在java中备份与还原工具类:package com.util;import java.io.BufferedReader;import java.io.File;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import javax.servlet.http.HttpServletRequest;import org.apache.commons.i原创 2020-07-07 09:12:46 · 420 阅读 · 0 评论 -
加载配置文件的四种方式
package day01;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.util.Properties;/** * 测试配置文件的读取-config.properties * 读取资源文件的多种方式(四种) */public cla原创 2017-03-28 00:06:16 · 5967 阅读 · 0 评论 -
利用serveResource()方法实现文件下载
Portlet页面:package com.demo.ajax;import java.io.File;import java.io.IOException;import javax.portlet.PortletException;import javax.portlet.ResourceRequest;import javax.portlet.ResourceResponse原创 2017-10-11 00:29:52 · 370 阅读 · 0 评论 -
获取web项目的绝对路径的方法总结
一、用Jsp获取 1、获取文件的绝对路径String file="文件";(例如:data.mdb)String path=application.getRealPath(file);结果:E:\java_web\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\myWebsite\文件2、获取文件的绝...转载 2018-03-16 17:22:51 · 1328 阅读 · 0 评论 -
在Liferay中的下载--两种方式
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %><%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %><%@ include file="/html/init.jsp&qu原创 2018-03-18 22:58:06 · 834 阅读 · 0 评论 -
maven项目中的下载--两种方式
JSP页面如下:<%@page contentType="text/html; charset=UTF-8" %><% String basePath = request.getContextPath();%><html> <head> <meta charset="UTF-8"> <title&原创 2018-03-19 09:08:20 · 1580 阅读 · 0 评论 -
Maven上传文件
JSP页面如下:<form action="wq2.do" enctype="multipart/form-data" method="post"> 上传文件1:<input type="file" name="file1"><br/> 上传文件2:<input typ原创 2018-03-19 09:56:46 · 959 阅读 · 0 评论 -
Maven 上传文件功能
在Maven中上传文件,已经知道了上传文件到什么位置,路径已知,本案例将选中的一个或多个文件上传到D盘的testUpload文件夹下,若没有testUpload文件夹,则先创建<form action="wq2.do" enctype="multipart/form-data" method="post" onsubmit="return check();"> 上...原创 2018-03-20 11:26:58 · 3350 阅读 · 0 评论 -
在Liferay中上传文件--使用自定义的方法
问题所在:先来看一下Liferay的机制,我们正常的工程部署后是在webapps下面,运行时也是在webapps下面,但是在liferay中部署是在webapps下面,运行是在temp下面对应的目录中的工程,如果在webapps文件夹下面创建文件夹作为上传的文件存放地,那么本地使用没有问题,在服务器上的时候该文件夹会在temp目录中生成,并没有在webapps目录下,这就与liferay的处理机制...原创 2018-03-20 11:40:30 · 660 阅读 · 0 评论 -
Java如何判断文件或者文件夹是否在?不存在如何创建?
1. 首先明确一点的是:test.txt文件可以和test文件夹同时存在同一目录下;test文件不能和test文件夹同时存在同一目录下。原因是:(1)win的文件和文件夹都是以节点形式存放,这就意味着相同的文件和文件名不能处在同一目录下,会命名冲突。(2)文件后缀名也算是文件名的一部分,即test.txt文件和test文件不是相同文件名的文件。 2. 基于以上原因,如果我想在d...转载 2019-01-09 22:00:04 · 693 阅读 · 0 评论 -
下载文件时候文件名包含中文和空格的处理
根据不同的浏览器编码方式处理不同,首先对使用的文件进行首次过滤,只要求符合条件的文件进入系统(例如上传文件的时候,限制文件名)本案例中要求文件名为:中文、英文(大小写)、数字、空格、括号但不支持特殊字符文件名为:879da7098c51e1f51d731 d5你好+-_@!#$%^&()().jpg 文件名中包含特殊字符,空格、加号、下划线、括号(中英文两种),注...原创 2019-04-28 15:21:35 · 3418 阅读 · 0 评论 -
关于文件图片路径的引用
案例如下:项目中有两个图片,主页面为show.jsp,要在主页面中访问两个图片第一种,访问同目录下的图片,即当前jsp页面与要访问的图片位于同一文件夹下<p>图片的显示 qq.jpg在webapp/img文件夹下 头像.jpg在webapp下</p><p>显示头像.jpg,与当前jsp在同一文件夹下</p><img sr...原创 2019-05-28 14:39:23 · 3706 阅读 · 0 评论 -
java中函数使用变长参数
java中函数使用变长参数当参数个数不确定时,开发者很想使用变长参数,让调用者以更灵活的方式调用。此种方法和方法重载有同样的效果,但是个人感觉比方法重载用着简洁。一直知道Java支持变长参数函数,然而项目中一直没有用到,前几天在项目中看到前辈大量使用变长参数,感觉有很好的效果。特别是API设计中能够解决很多不确定因素。下面是一个简单的变长参数示例变长参数使用的形式是Type...argsN转载 2017-02-12 22:25:13 · 412 阅读 · 0 评论 -
XML相关操作
有一个Emp类,用于描述员工代码如下:/** * 该类用于描述emp.xml文件中的员工 */public class Emp { private int id; private String name; private int age; private String gender; private int salary; public Emp(){} public E原创 2017-02-04 21:45:36 · 309 阅读 · 0 评论 -
读取源文件内容的每一行,求和再存入最后一行
要求如下:读取源文件内容的每一行,求和再存入最后一行代码如下:public class TestDemo7 { public static void main(String[] args) { System.out.println("*****开始****"); try{ FileInputStream fis = new FileInputStream("pw.t原创 2017-01-01 15:21:04 · 1150 阅读 · 0 评论 -
常见的运行时异常(RuntimeException) 和复制中的异常处理
空指针异常: NullPointerException数组下标越界异常:ArrayIndexOutOfBoundsException字符串下标越界异常:StringIndexOutOfBoundsException不合法的参数异常:IllegalArgumentException算术异常:ArithmeticException数字格式化异常:NumberFormatExcept...原创 2017-01-01 14:06:13 · 1550 阅读 · 0 评论 -
文件的复制
要求:复制一个大小为108MB的视频文件代码如下:public class TestDemo { public static void main(String[] args) throws IOException { long start = System.currentTimeMillis(); RandomAccessFile raf = new RandomAccessFi原创 2016-12-22 21:12:20 · 920 阅读 · 0 评论 -
写入文件和获取文件内容
代码如下:import java.io.FileNotFoundException;import java.io.IOException;import java.io.RandomAccessFile;public class Test1 { public static void main(String[] args) throws IOException { /** *原创 2016-12-22 19:10:43 · 380 阅读 · 0 评论 -
文件的创建与删除
/** * 要求用户输入一个文件名并使用File在当前目录下创建出来。 * 若该文件已经存在,则提示用户该文件已经存在。并创建该文件副本: * 例如:用户输入"test.txt".若该文件已存在,提示用户存在后,创建名为:test_副本1.txt 的文件 * 若该文件也存在了,则创建名为:test_副本2.txt 的文件,以此类推 * @author Xiloer * */代码如原创 2016-12-23 16:02:47 · 1507 阅读 · 2 评论 -
文件读取与集合的操作
/** * 编写一个程序,将当前目录下所有员工文件进行读取,并解析出所有员工为Emp * 对象并存入集合。然后排序该集合,按照员工的年龄排序,年龄大的靠前,年龄小 * 的靠后。排序完毕后输出结果。 * @author Xiloer * */代码如下:public class Test11 { public static void main(String[] args) thr原创 2016-12-24 18:58:58 · 950 阅读 · 0 评论 -
按照字节数读取文件
/** * 将emp.dat文件中所有员工解析出来,并创建为若干Emp实例存入一个 * 集合,然后输出该集合中每个员工信息。 * 该文件800字节,每80个字节为一个员工的信息。 * 其中: * name为字符串,长度为32个字节,编码为:UTF-8 * age为int,长度为4个字节 * gender为字符串,长度为10个字节,编码为:UTF-8 * salary原创 2016-12-24 22:45:55 · 2812 阅读 · 1 评论 -
输入输出流操作对象
** * 要求用户控制台输入想输入的员工人数(至少5个),然后依序输入员工信息,每行为 * 一条员工信息,格式如:张三,25,男,5000,2006-3-18 * 然后将该对象写入到文件.obj并保存到当前项目根目录中,例如:张三.obj。 * @author Xiloer * */代码如下:public class Test03 { public static void m原创 2016-12-27 17:04:30 · 1231 阅读 · 1 评论 -
异常处理文件的写出操作
/** * 使用异常捕获完成下述操作 * 将控制台输入的每一行字符串使用缓冲字符输出流PrintWriter * 按行以GBK编码写入到文件note.txt中 * @author Xiloer * */代码如下:public class Demo2 { public static void main(String[] args) { PrintWriter pw = nu原创 2017-01-01 16:48:50 · 627 阅读 · 0 评论 -
文件读取的综合案例
/** * 使用异常捕获机制完成下述IO操作 * 编写程序,要求下面的类实现功能: * 添加新员工 * 要求用户输入一个员工信息,格式如下: * jackson,25,男,5000,2008-12-22 * 用户输入后需要做下述验证: * 要求用户名长度在1-20个字符之间且必须是英文 * 年龄在0-100之间的整数 * 性别只能是:"男"或"女" * 当发现用户输入有不符合规原创 2017-01-01 22:39:15 · 338 阅读 · 0 评论 -
聊天室
功能:1.群聊 2.私聊:发送信息格式 @昵称:xxxx(xxxx为信息内容)代码如下:客户端package chat_socket.copy;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamR原创 2017-01-26 21:06:35 · 412 阅读 · 0 评论 -
UDP通信
使用Java的DatagramSocket实现客户端和服务器端通信示例:原创 2017-01-27 11:50:32 · 241 阅读 · 0 评论 -
异常操作(解析文件)
/** * 使用异常捕获机制完成下述读取操作 * 读取emp.txt文件,并将每个员工信息读取出来,以一个Emp实例保存,然后将 * 这些Emp实例存入到一个Map集合中。其中key为字符串,是该员工名字,而value * 是该Emp实例。 * 存入后,要求用户输入一个员工的名字,如:张三 * 若该员工存在则输出该员工所有信息(Emp的toString方法返回的字符串) * 输入的员原创 2017-01-01 18:04:22 · 872 阅读 · 0 评论