用Java操作文件
一个用java实现对文件的操作。完成了如创建目录及文件,复制目录及文件以及删除等功能。
主要用到了java的File类,FileInputStream类,FileOutputStream,FileWriter,PrintWriter,InputStream,OutputStream ,BufferedReader和FileReader等相关类。
程序在某些方的实现可能存在一些问题,欢迎各位提出指正。
程序代码
/
**
* Java对文件的基本操作
* @author 梦想年华
* Copyright (C) 2005 自由时代 All right reserved.
* Email:fanwsp@126.com
*/
package file;
import java.io.*;
public class FileClass {
//private String sFileName;
//private String sFolderName;
String sPath;
String sFilePath;
String sContent;
/********************
* 新建目录
*******************/
public boolean newFolder(String s)
{
sPath = s;
sPath = sPath.toString();//中文转换
//创建一个File(文件)对象
File myFilePath = new File(sPath);
if(!myFilePath.exists())
{
try
{
myFilePath.mkdirs();
return true;
}catch(Exception e)
{
e.printStackTrace();
return false;
}
}
else return false;
}
/********************
* 新建文件
*******************/
public boolean newFile(String s1,String s2)
{
sFilePath = s1;
sContent = s2;
sFilePath = sFilePath.toString();
File myFilePath = new File(sFilePath);
if(!myFilePath.exists())
{
try
{
myFilePath.createNewFile();
FileWriter resultFile=new FileWriter(myFilePath);
PrintWriter myFile=new PrintWriter(resultFile);
String sContent = s2.toString();
myFile.println(sContent);
myFile.close();
resultFile.close();
return true;
}catch(Exception e)
{
e.printStackTrace();
return false;
}
}
else return false;
}
/********************
* 删除文件
*******************/
public boolean delFile(String s)
{
sFilePath = s;
sFilePath = sFilePath.toString();
File dFile = new File(sFilePath);
if(dFile.exists())
{
try
{
dFile.delete();
return true;
}catch(Exception e)
{
e.printStackTrace();
return false;
}
}
else
{
System.out.print("文件:" + s + "不存在!");
return false;
}
}
/********************
* 复制文件
*******************/
public boolean copyFile(String s1,String s2)
{
int bytesum=0;
int byteread=0;
//file:读到流中
try
{
InputStream inStream=new FileInputStream(s1);
FileOutputStream fs=new FileOutputStream(s2);
byte[] buffer =new byte[1444];
while ((byteread=inStream.read(buffer))!=-1)
{
System.out.println("-- "+byteread+" --");
bytesum+=byteread;
System.out.println(bytesum);
fs.write(buffer,0,byteread);
}
inStream.close();
fs.close();
return true;
}catch(Exception e)
{
return false;
}
}
/********************
* 复制文件夹
*******************/
public boolean copyFolder(String s1,String s2)
{
try{
(new File(s2)).mkdirs();
File[] file=(new File(s1)).listFiles();
for(int i=0;ifile.length;i++)
{
if(file.isFile()){
file.toString();
FileInputStream input=new FileInputStream(file);
FileOutputStream output=new FileOutputStream(s2+"/"+(file.getName()).toString());
byte[] b=new byte[1024*5];
int len;
while((len=input.read(b))!=-1){
output.write(b,0,len);
}
output.flush();
output.close();
input.close();
}
}
return true;
}catch(IOException e){
e.printStackTrace();
return false;
}
}
/********************
* 得到文本文件的内容
*******************/
public String getFile(String s1)
{
try{
StringBuffer sb = new StringBuffer();
BufferedReader in = new BufferedReader(new FileReader(s1));
while(in.readLine()!=null){
sb.append(in.readLine()+"\n\r");
}
return sb.toString();
}catch(IOException e){
e.printStackTrace();
return null;
}
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成方法存根
String s1="";
String s2="";
FileClass file1 = new FileClass();
//目录创建测试
s2="F:/Test/Test1";
if (file1.newFolder(s2))
System.out.println("创建目录 " + s2 + " 成功!");
else
System.out.println("创建目录 " + s2 + " 失败!!");
//文件创建测试
s1="F:/Test/Test1/Test.txt";
s2="这是一个测试文件!";
file1.delFile(s1);
if (file1.newFile(s1,s2))
System.out.println("创建文件 " + s1 + " 成功!");
else
System.out.println("创建文件 " + s1 + " 失败!!");
System.out.print("\n"+s2);
//文件删除测试
s1="F:/Test/Test1/Test.txt";
if (file1.delFile(s1))
System.out.println("删除文件 " + s1 + " 成功!");
else
System.out.println("删除文件 " + s1 + " 失败!!");
//复制文件测试
s1="F:/Test/Test1/Test.txt";
s2="F:/Test/Test1/Test1.txt";
if (file1.copyFile(s1,s2))
System.out.print("把文件 "+s1+"成功复制到 "+s2);
else System.out.print("复制文件失败!");
//复制目录测试
s1="F:/Test/Test1";
s2="F:/Test/Test2";
if (file1.copyFolder(s1,s2))
System.out.print("把文件夹 "+s1+" 成功复制到文件夹 "+s2);
else System.out.print("复制文件夹失败!");
//得到文件内容测试
System.out.print(file1.getFile("F:/Test/Test1/Test1.txt"));
}
}
分享到:
相关推荐
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提供了一些库来实现这一功能,其中之一就是jcifs库,它是一个开源的Java SMB(Server Message Block)客户端,使得Java程序能够方便地操作Windows网络共享文件。在本文中,我们将深入探讨如何使用jcifs库中的...
在Java编程语言中,文件的读写操作是日常开发中不可或缺的部分。无论是处理用户数据、配置文件,还是进行数据持久化,都需要用到文件的读写功能。本篇将详细介绍如何在Java中实现文件的读写操作,并通过一个小例子...
例如,如果在多线程环境中操作文件,可能需要对`FileUtils`的方法进行适当的同步控制,以防止并发问题。此外,`FileUtils.copyURLToFile(URL source, File destination)`方法可以方便地从URL下载文件并保存到本地。 ...
当处理包含文本数据的文件时,通常使用`java.io.InputStreamReader`和`java.io.Reader`类按字符读取。这样可以处理字符编码问题,例如UTF-8。以下是如何按字符读取文件的例子: ```java Reader reader = new ...
这篇博文主要探讨了如何使用Java进行常见的文件操作,包括创建、读取、写入、删除文件以及处理目录等。以下是对这些知识点的详细说明: 1. **创建文件**: 在Java中,我们可以使用`java.io.File`类来创建文件。...
在Java编程中,文件操作是至关重要的,它允许程序与文件系统进行交互,执行诸如读取、写入、追加、删除、移动和复制等操作。本篇文章将深入探讨Java中的文件操作,特别是基于IO流的读取方法。 首先,我们来看如何...
# java实现对文件的各种操作的工具类 ## 可以实现的操作有: 1. 删除单个文件 2. 删除文件夹及文件夹下的文件 3. 使用文件流对单个文件进行复制 4. 复制整个文件夹内容(包含子文件夹中的所有内容) 5. ...
Java文件操作是Java编程中必不可少的部分,它涵盖了...以上就是Java文件操作的核心知识点,涵盖了文件和目录的基本操作、流的使用、NIO特性、异常处理等多个方面。通过这些,开发者可以灵活地处理各种文件操作任务。
文件工具类java操作文件工具类java操作文件工具类java操作文件工具类java操作文件工具类
JAVA代码实现远程操作服务器文件是指使用JAVA语言实现远程操作服务器文件的功能,实现FTP,共享文件夹操作。该功能可以实现远程服务器文件的上传、下载、复制、移动、删除等操作。 description: 该实现使用了...
Java编程语言提供了丰富的API用于处理文件操作,包括创建、读取、写入和删除文件等。在Java中,写文件是通过`java.io`包中的类实现的,主要涉及File类、FileWriter类、BufferedWriter类等。下面将详细阐述Java写文件...
将一系列图片文件存储到MongoDB中 java操作mongodb存储文件
Java操作DBF文件是数据库处理中的一个特殊场景,DBF是一种常见的数据库文件格式,常见于FoxPro、dBase等早期数据库管理系统中。在Java中处理DBF文件,主要是为了兼容这些旧系统的数据或者进行特定的数据交换。下面...
java视频教程 Java文件操作 JavaFile
首先,我们需要了解Java中用于文件操作的基本类,如`java.io.File`,它提供了创建、读取、写入和删除文件的方法。此外,为了与SharePoint交互,我们需要使用Microsoft提供的客户端对象模型(Client Object Model,...
总之,用Java通过文件操作实现最短路径问题是一项综合性的任务,它结合了图论算法和文件I/O技术。理解并实现这样的程序不仅可以提高Java编程能力,也能加深对图算法和文件操作的理解。在实际项目中,这样的技能对于...
### Java中文件操作详解 #### 一、获取控制台用户输入信息 在Java中,获取控制台用户输入信息是一项基本但重要的操作。如标题“Java中文件操作大全”所示,其中一个示例方法`getInputMessage()`用于从控制台读取...