`
wangse
  • 浏览: 30445 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

java读写文件

    博客分类:
  • java
阅读更多
package velcro.util;

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

/**
 * 对文本文件进行读写操作
 */
public class WriteAndReadText {
	/**
	 * 文本文件所在的目录
	 */
	private String textPath;
	/**
	 * 读取文本内容
	 * @param textname 文本名称
	 * @return
	 */
	public String readText(String textname){
		File file=new File(textPath+File.separator+textname);
		try {
			BufferedReader br = new BufferedReader(new java.io.FileReader(file));
			StringBuffer sb = new StringBuffer();
			String line = br.readLine();
			while (line != null) {
				sb.append(line);
				line = br.readLine();
			}
			br.close();
			return sb.toString();
		} catch (IOException e) {
			LogInfo.error(this.getClass().getName(),e.getLocalizedMessage(),e);
			e.printStackTrace();
			return null;
		}
	}
	}
	/**
	 * 将内容写到文本中
	 * @param textname 文本名称
	 * @param date 写入的内容
	 * @return
	 */
	public boolean writeText(String textname,String date){
		boolean flag=false;
		File filePath=new File(textPath);
		if(!filePath.exists()){
			filePath.mkdirs();
		}
		try {
			FileWriter fw =new FileWriter(textPath+File.separator+textname);
			fw.write(date);
			flag=true;
			if(fw!=null)
				fw.close();
		} catch (IOException e) {
			LogInfo.error(this.getClass().getName(),e.getMessage(),e);
			e.printStackTrace();
		}

		return flag;		
	}
	/**
	 * 在文档后附加内容
	 * @param textName
	 * @param date
	 * @return
	 */
	public boolean appendText(String textName,String date){
		boolean flag=false;
		File filePath=new File(textPath);
		if(!filePath.exists()){
			filePath.mkdirs();
		}
		try {
			FileWriter fw =new FileWriter(textPath+File.separator+textName,true);
			fw.append(date);
			flag=true;
			if(fw!=null)
				fw.close();
		} catch (IOException e) {
			LogInfo.error(this.getClass().getName(),e.fillInStackTrace().toString());
			e.printStackTrace();
		}
		return flag;	
	}
	public String getTextPath() {
		return textPath;
	}
	public void setTextPath(String textPath) {
		this.textPath = textPath;
	}
}



PrintWriter out = new PrintWriter(new FileWriter(logFileName, true), true);
Java读写文件最常用的类是FileInputStream/FileOutputStream和FileReader/FileWriter。
其中FileInputStream和FileOutputStream是基于字节流的,常用于读写二进制文件。
读写字符文件建议使用基于字符的FileReader和FileWriter,省去了字节与字符之间的转换。
但这两个类的构造函数默认使用系统的编码方式,如果文件内容与系统编码方式不一致,可能会出现乱码。
在这种情况下,建议使用FileReader和FileWriter的父类:InputStreamReader/OutputStreamWriter,
它们也是基于字符的,但在构造函数中可以指定编码类型:InputStreamReader(InputStream in, Charset cs) 和OutputStreamWriter(OutputStream out, Charset cs)。

// 读写文件的编码:
InputStreamReader r = new InputStreamReader(new FileInputStream(fileName), “utf-8″);
OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream(fileName),”utf-8″);

分享到:
评论
1 楼 Will.Du 2012-06-07  
思路很清晰,用用看~~

相关推荐

    java读取文件方法大全

    根据给定的文件信息,我们可以总结出一系列关于Java中读取文件的方法,这些方法涵盖了不同层次的数据读取,包括字节、字符以及行级别的读取。以下是对这些知识点的详细阐述: ### Java读取文件方法大全:读取File流...

    java读写文件(txt)

    在Java编程中,读写文件是一项基础且重要的任务,...以上就是关于“Java读写文件(txt)”的知识点,包括文件的读取、内容转换、正则匹配以及文件的写入。希望这些内容能帮助你理解和掌握Java在文件操作上的基本技能。

    java读取文件大全

    java读取文件大全 写入字节流 读取字节流 在实际运用中相当的广泛 大家共享下资料

    java 读取文件 文件读取操作

    Java中`java.io.FileInputStream`类提供了按字节读取文件的功能。这种方法适用于读取二进制文件,例如图像、音频或视频文件。下面的代码示例展示了如何按字节读取文件: ```java FileInputStream in = new ...

    Java 读写文件文本文件的示例

    根据给定的文件信息,我们将深入探讨Java读写文件文本文件的关键知识点,这些知识点主要集中在文件的读取、写入以及流的复制等操作上。 ### Java读取文本文件 在Java中,读取文本文件通常涉及到使用`InputStream`...

    Java读写文件(excel)

    Java读写文件-Excel

    java读写文件避免中文乱码.docx

    Java 提供了多种方式来读取文件,例如使用 `FileInputStream`、`FileReader`、`BufferedReader` 等。但是,使用这些类时,需要指定正确的编码方式,以避免中文乱码。 在给定的代码中,使用了 `InputStreamReader` ...

    Java读取文件的几种方式

    介绍Java直接读取、带缓冲读取、内存映射读取文件,并详细注释。

    java 读取文件方法的总结

    Java 读取文件的方法在Java编程中至关重要,无论是处理文本文件、二进制文件还是其他类型的数据,都需要灵活运用各种读取方式。以下是对Java读取文件的五种方法的详细说明,每种方法都有相应的代码示例: 1. **按...

    java如何读取文件

    在Java编程语言中,读取文件是一项常见的操作,尤其是在处理数据、日志文件或配置信息时。本文将详细解析如何使用Java读取文本文件,基于提供的代码示例,深入探讨其工作原理及最佳实践。 ### Java读取文本文件的...

    Java读写文件API的用法指南,性能分析与对比。

    在Java编程语言中,文件操作是日常开发中的基础任务,涉及到数据的持久化存储和读取。本指南将深入探讨Java中的文件读写API,包括常用的方法、性能分析以及不同方式之间的对比。以下是对相关知识点的详细说明: 1. ...

    java 读取文件乱码

    在Java编程中,遇到“java 读取文件乱码”的问题通常是由于编码格式不匹配导致的。当程序按照一种编码方式打开文件,而文件实际采用的是另一种编码时,就会出现乱码现象。解决这个问题需要理解Java中处理字符编码的...

    最简单易懂的一个java读写文件的操作

    通过`FileReader`和`BufferedReader`读取文件,用`FileWriter`和`BufferedWriter`写入文件,结合`newLine()`方法处理换行,我们可以实现对文件的高效且兼容的操作。这些基础知识是每个Java开发者都需要掌握的,对于...

    Java读取文件方法大全

    Java语言在处理文件I/O操作时提供了多种方法,这些方法可以按照不同的策略读取文件,例如按字节或字符进行。下面将详细讲解Java中读取文件的主要方法,并结合给出的代码片段进行分析。 首先,Java中最基础的文件...

    Java读取文件并对其排序后重新写入文件

    在Java编程中,读取文件、对数据进行排序并重新写入文件是常见的操作,尤其在数据处理和分析场景中。下面将详细讲解这个过程,包括相关知识点和具体实现。 首先,我们需要导入Java的`java.io`包,该包包含了处理...

    JAVA读写文件小实例

    在Java编程语言中,文件的读写操作是日常开发中不可或缺的部分。本实例将深入探讨如何使用Java进行文件的读取和写入操作,这对于处理数据存储、日志记录、配置文件管理等任务至关重要。首先,我们需要理解Java中的几...

    java按行读取大文件并解析入库

    使用`java.nio.FileChannel`类创建一个文件通道,这允许我们以非阻塞的方式读取文件。通过`Files.newByteChannel()`方法可以从`java.nio.file.Paths`中获取文件通道。 ```java FileChannel fileChannel = Files....

    java 读取文件

    本文主要关注如何使用Java来读取文件内容,包括四种常见的读取方式:按字节读取、按字符读取、按行读取以及随机读取。此外,我们还将讨论如何向文件追加内容。 一、按字节读取文件内容 在Java中,`java.io ...

    Java读取文件方法集锦(经典小程序)

    [Java]读取文件方法大全 1、按字节读取文件内容 2、按字符读取文件内容 3、按行读取文件内容 4、随机读取文件内容

Global site tag (gtag.js) - Google Analytics