`
红尘默岩
  • 浏览: 77892 次
  • 性别: Icon_minigender_1
  • 来自: 福建福州
社区版块
存档分类
最新评论

Java文件处理

    博客分类:
  • Java
阅读更多

1、上传文件

 

/**
 * 上传文件到服务器
 * @return
 * @throws Exception
 */
public void vendorArchivesUpload() throws Exception{
String url = this.getConditionMap().get("fileValue"); //获取文件路径
int len = url.lastIndexOf('\\'); //获取'\'最后出现的位置
String name = url.substring(len+1); //截取文件名
 
Calendar date = Calendar.getInstance(); //创建时间对象
String dest = "E:\\File\\"+date.get(Calendar.YEAR)+(date.get(Calendar.MONTH)+1)+date.get(Calendar.DATE)+
date.get(Calendar.HOUR_OF_DAY)+date.get(Calendar.MINUTE)+date.get(Calendar.SECOND)+"-"+name;
 
copyFile(url,dest); //调用自定义方法,进行文件的复制

String url1 = "E:\\File\\0附件.txt";
String url = "E:/File/0附件.txt";
int len = url.lastIndexOf('/'); //获取'/'最后出现的位置
String path = url.substring(0,len); //获取文件目录
String name = url.substring(len+1); //截取文件名
delFile(path,name); //调用自定义方法,进行文件的删除
}
 

 

 

2、复制文件:

/** 以文件流的方式复制文件 
 * @param url 文件源目录 
 * @param dest 文件目的目录 
 * @throws IOException 
 */ 
public void copyFile(String url,String dest) throws IOException{ 
FileInputStream in=new FileInputStream(url); 
File file=new File(dest); 
if(!file.exists()) {
file.createNewFile(); 
}
FileOutputStream out=new FileOutputStream(file); 
int c; 
byte buffer[]=new byte[1024]; 
while((c=in.read(buffer))!=-1){
for(int i=0;i<c;i++) {
out.write(buffer[i]); 
}
} 
in.close(); 
out.close(); 
} 

 

 

3、删除文件:

/**删除文件
 * @param path 目录 
 * @param filename 文件名 
 */ 
public void delFile(String path,String filename){ 
File file=new File(path+"/"+filename); 
if(file.exists()&&file.isFile()) 
file.delete(); 
}

 

 

 4、下载文件:

/**
 * 自定义方法:下载附件
 * @param path 文件在服务器上的地址;例如:E:\DownloadFile\2012-10-13\20120909121201234.txt
 * @param filename 文件名;例如:小说.txt
 */ 
public void downloadFile(String path,String fileNames)  throws IOException{ 
HttpServletResponse response = null;
 try {
  response = ServletActionContext.getResponse();
  // path是指欲下载的文件的路径。
  File file = new File(path);
  // 取得文件名。
  String filename = file.getName();
  // 取得文件的后缀名。
  String ext = filename.substring(filename.lastIndexOf(".") + 1).toUpperCase();
  String name = fileNames+"."+ext;
 
  // 以流的形式下载文件。
  InputStream fis = new BufferedInputStream(new FileInputStream(path));
  byte[] buffer = new byte[fis.available()];
  fis.read(buffer);
  fis.close();
  // 清空response
  response.reset();
  
  // 设置response的Header;name.getBytes()中name为下载时默认的文件名
  response.setHeader("Content-Type", "application/octet-stream");
  response.addHeader("Content-Disposition", "attachment;filename="
    + new String(name.getBytes(), "ISO8859-1"));
  response.addHeader("Content-Length", "" + file.length());
  OutputStream toClient = response.getOutputStream();
 
  toClient.write(buffer);
  toClient.flush();
  toClient.close();
 } catch (IOException ex) {
 logger.debug("vendorArchivesDownload:", ex);
 }
System.out.println("下载成功。。。。。。。。。");
}

 

5、读取文件

/**
 * 读取文件内容
 * 
 * @param filePath			文件路径
 * @return String			返回内容
 */
public String readTxtFile(String filePath){
  String text = "";
  try {
    String encoding="GBK";
    File file=new File(filePath);
        
    //判断文件是否存在
    if(file.isFile() && file.exists()){
        //考虑到编码格式
        InputStreamReader read = new InputStreamReader(new FileInputStream(file),encoding);
        BufferedReader bufferedReader = new BufferedReader(read);
        String lineTxt = null;
        while((lineTxt = bufferedReader.readLine()) != null){
            text = lineTxt;
        }
        read.close();
    }else{
        System.out.println("找不到指定的文件");
    }
  } catch (Exception e) {
    System.out.println("读取文件内容出错");
    e.printStackTrace();
  }
	
  return text;
}

 

分享到:
评论

相关推荐

    java 文件处理工具类 java 文件处理工具类java 文件处理工具类java 文件处理工具类

    java 文件处理工具类 java 文件处理工具类java 文件处理工具类java 文件处理工具类java 文件处理工具类 java 文件处理工具类java 文件处理工具类java 文件处理工具类java 文件处理工具类 java 文件处理工具类java ...

    java 文件处理工具类 java 文件处理工具类

    java 文件处理工具类 java 文件处理工具类java 文件处理工具类 java 文件处理工具类java 文件处理工具类 java 文件处理工具类java 文件处理工具类 java 文件处理工具类java 文件处理工具类 java 文件处理工具类java ...

    java文件处理基础

    在网上找的关于java文件处理的一些有用的方法

    Java的文件处理相关工具类

    提供java中对文件类的各种基本操作,主要包括获取文件的后缀名称,读取文件内容,写入文件内容,拷贝文件,将文件转换为二进制数组等操作,转换为Blob格式类等操作

    Java读取大文件的处理

    Java读取大文件的处理 Java读取大文件的处理是Java编程中的一项重要技术,特别是在处理大文件时需要注意性能和响应速度。下面我们将对Java读取大文件的处理技术进行详细的介绍。 标题解释 Java读取大文件的处理是...

    常用文件处理方法(java)

    此文件包含常用文件处理方法,其中包含文件压缩,递归删除,图片处理等等,语言基于java。

    java大批量文件处理

    java大批量文件处理

    JAVA对音频文件处理程序

    本项目“JAVA对音频文件处理程序”聚焦于读取音频文件,执行降分贝操作,然后将处理后的音频保存为新的文件。这里我们将深入探讨相关的关键知识点。 首先,Java提供了一个强大的包`javax.sound.sampled`来处理音频...

    Large-File-Processing-master_javanio_java大文件处理_

    本项目“Large-File-Processing-master_javanio_java大文件处理_”显然专注于通过Java NIO实现大文件处理,下面我们将详细探讨相关的知识点。 1. **Java NIO基础**:NIO的核心组件包括通道(Channels)、缓冲区...

    ajax实现java文件下载

    2. **Java文件下载**:在Java Web开发中,服务器端通常使用Servlet或Controller来处理文件下载请求。这些组件会根据客户端请求,读取文件内容,设置合适的HTTP响应头(如Content-Type,Content-Disposition等),并...

    高效处理文件流 java文件

    里面包含了高效处理文件流的一个java文件,工作时总会用到 个人原创 请使用者标明作者信息 谢谢 oneRose 奉献(下载后的朋友们给点意见 谢谢)

    java文件上传程序

    Java 文件上传程序是指使用 Java 语言编写的文件上传程序,负责接收和处理客户端上传的文件。以下是 Java 文件上传程序的相关知识点: 1. 服务器端编程:Java 文件上传程序的服务器端使用 Java 语言编写,主要使用 ...

    java 处理并记录日志文件 *

    java 处理并记录日志文件 *java 处理并记录日志文件 *java 处理并记录日志文件 *java 处理并记录日志文件 *java 处理并记录日志文件 *java 处理并记录日志文件 *java 处理并记录日志文件 *java 处理并记录日志文件 *...

    java 文件管理器

    2. **File 类**:Java中的`java.io.File`类是处理文件和目录的基础。通过这个类,开发者可以获取文件的属性(如大小、路径、是否存在等)、创建新文件、删除文件、重命名文件以及遍历目录结构。 3. **I/O 流**:...

    java文件分割合并

    在Java编程语言中,文件操作是常见的任务之一,特别是在处理大型文件时,有时我们需要将大文件分割成多个小文件,以便于传输、存储或者优化处理效率。同样,我们也可能需要将这些小文件重新合并成原始的大文件。在这...

    java不同文件处理

    用不同方法实现txt文件的读取,并且可以实现step文件的读入

    java 读取文件 文件读取操作

    在Java编程语言中,文件读取是常见的任务,可以用于处理各种类型的数据,如文本、图像、音频等。本文将详细介绍Java中四种不同的文件读取方法:...理解这些基本概念可以帮助你编写出更加高效和灵活的Java文件操作程序。

    java通过文件头内容判断文件类型

    总的来说,通过Java读取文件头内容判断文件类型是一种实用的技术,尤其在处理未知或不安全的文件时。理解并掌握这个方法,能够帮助我们在实际开发中更好地处理各种文件操作,提高程序的健壮性和安全性。

    java 解析 chm 文件

    在Java中处理CHM文件,通常是为了在不支持或没有CHM查看器的环境下访问这些内容,或者为了将CHM内容集成到其他应用或网站中。 要实现这个功能,我们需要了解几个关键知识点: 1. **CHM文件结构**:CHM文件由多个...

    java多线程加队列上传文件_后台处理

    ### Java多线程加队列上传文件_后台处理 #### 概述 本文将详细介绍一个基于Java实现的多线程文件上传系统,并结合队列管理技术来优化后台处理流程。该系统通过创建多个线程来并行处理客户端的文件上传请求,同时...

Global site tag (gtag.js) - Google Analytics