package com.broadtext.eim.test;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
/**
*
* TODO 此处为类的功能性说明
* @Time 下午06:28:41
* @author mengjiahao
*/
public class WriteTextService {
public static BufferedReader bufread;
// 指定文件路径和名称
private static String path = "D:/sessionId.txt";
private static File filename = new File(path);
private static String readStr = "";
/** */
/**
* 创建文本文件.
*
* @throws IOException
*
*/
public static void creatTxtFile() throws IOException {
if (!filename.exists()) {
filename.createNewFile();
System.err.println(filename + "已创建!");
}
}
/** */
/**
* 读取文本文件.
*
* @throws IOException
*
*/
public static String readTxtFile() throws IOException {
String strs = "";
try {
FileReader read = new FileReader(filename);
StringBuffer sb = new StringBuffer();
char ch[] = new char[1024];
int d = read.read(ch);
while (d != -1) {
String str = new String(ch, 0, d);
sb.append(str);
d = read.read(ch);
}
strs = sb.toString();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("文件内容是:" + "\r\n" + strs);
return strs;
}
/** */
/**
* 写文件.
*
*/
public static void writeTxtFile(String newStr) throws IOException {
// 创建文件
creatTxtFile();
// 读取文件
String str = readTxtFile();
// 写入文件
FileWriter fw = new FileWriter(path);
if (str.length() < 1) {
fw.write(newStr);
} else {
fw.write(str + "\r\n" + newStr);
}
fw.close();
}
/** */
/**
* 将文件中指定内容的第一行替换为其它内容.
*
* @param oldStr
* 查找内容
* @param replaceStr
* 替换内容
*/
public static void replaceTxtByStr(String oldStr, String replaceStr) {
String temp = "";
try {
File file = new File(path);
FileInputStream fis = new FileInputStream(file);
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader br = new BufferedReader(isr);
StringBuffer buf = new StringBuffer();
// 保存该行前面的内容
for (int j = 1; (temp = br.readLine()) != null
&& !temp.equals(oldStr); j++) {
buf = buf.append(temp);
buf = buf.append(System.getProperty("line.separator"));
}
// 将内容插入
buf = buf.append(replaceStr);
// 保存该行后面的内容
while ((temp = br.readLine()) != null) {
buf = buf.append(System.getProperty("line.separator"));
buf = buf.append(temp);
}
br.close();
FileOutputStream fos = new FileOutputStream(file);
PrintWriter pw = new PrintWriter(fos);
pw.write(buf.toString().toCharArray());
pw.flush();
pw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
/** */
/**
* main方法测试
*
* @param s
* @throws IOException
*/
public static void main(String[] s) throws IOException {
// 创建文件
creatTxtFile();
// 读取文件
readTxtFile();
// 写入文件
writeTxtFile("道是无晴却有晴");
// 读取文件
readTxtFile();
}
}
分享到:
相关推荐
### Java创建TXT文件并执行读写操作:详细解析与代码示例 在现代软件开发中,文件处理是一项基本且重要的任务。Java作为一种广泛使用的编程语言,提供了强大的API来支持文件的创建、读取、写入以及修改等操作。本文...
### Java删除某行和读写TXT文件 在Java中,如果需要从文本文件中删除特定行,实际上并没有直接提供这样的方法。通常的做法是先将文件中的所有内容读取到内存中,然后根据需要过滤掉不需要的行,最后再将处理后的...
在Java编程中,读写文件是一项基础且重要的任务,...以上就是关于“Java读写文件(txt)”的知识点,包括文件的读取、内容转换、正则匹配以及文件的写入。希望这些内容能帮助你理解和掌握Java在文件操作上的基本技能。
4. **创建输出流**:创建一个输出流`fos`,指向与输入文件同名的新文件。 5. **获取文件大小**:通过`File`对象的`length()`方法获取文件大小,并输出。 6. **读写操作**: - 创建一个字节数组`temp`用于临时存储...
通过上述四个主要部分的分析,我们可以看到Java语言在处理文件读写方面提供了丰富的API支持。使用合适的类库可以极大地简化开发工作并提高程序的性能。例如,使用`StringBuffer`可以有效地处理字符串的动态增长;而`...
在Java编程中,读写文本文件(如`.txt`文件)是常见的操作,尤其是在处理配置文件时。配置文件通常以键值对(key-value pairs)的形式存储数据,便于程序访问和管理设置。以下是对这个主题的详细阐述: 1. **Java I...
总结,Java中的文件读写操作涉及到多个类和接口,理解并熟练运用它们是每个Java开发者必备的技能。通过上述介绍和示例,你应该对Java的文件操作有了基本的认识。实践中,你可以根据具体需求选择合适的方法和类,实现...
Java提供了丰富的类库用于读写文件,主要集中在`java.io`包下。`File`类用于表示文件或目录路径,而`BufferedReader`或`Scanner`通常用于读取文本文件。例如,我们可以创建一个`BufferedReader`实例来逐行读取txt...
随着Java的发展,不同版本提供了多种方式来处理文件读写,这使得开发者可以根据实际需求选择最合适的方法。本文将重点探讨Java在不同版本中所提供的文件读写方式,并对其进行对比分析。 #### 一、JDK 1.0 中的文件...
本文将介绍使用 Java 实现对 dbf 文件的简单读写,包括读写 dbf 文件的基本步骤、相关类的介绍、代码实现等内容。 一、读写 dbf 文件的基本步骤 dbf 文件是一种常用的数据库文件格式,用于存储结构化数据。读写 ...
9. **相关工具与库**:有一些开源库如BCEL(Byte Code Engineering Library)和ASM提供API,可以方便地读写和修改Java类文件,简化开发过程。 10. **学习资源**:理解类文件格式的官方文档是《Java Virtual Machine...
对于开发者来说,这意味着需要更新代码以适配这些新规则,尤其是在进行文件读写操作时。本文将详细探讨Android 13的读写权限变更,以及如何在小米14设备上处理txt文件的读写测试。 首先,理解Android 13中的存储...
在Java程序中,我们需要首先导入处理文件读写的必要类库。在这个示例中,我们看到了`import java.io.*;`这一行代码,它表明了该程序将使用Java标准库中的`java.io`包内的所有类。 #### 二、类定义与方法签名 该...
在这个程序中,我们关注的是如何使用Java的IO流(Input/Output Stream)来读取多个TXT文件的内容,并将其合并到一个新的TXT文件中。以下是关于这个程序及其涉及的Java IO流知识点的详细解释: 1. **IO流概念**:...
在这个主题中,我们将深入探讨如何使用Java POI库来实现Word(包括.doc和.docx)以及TXT文件的读写操作。 首先,让我们了解一下Java POI的工作原理。POI库提供了HSSF和XSSF两个API,分别用于处理旧版的二进制Excel...
### Java读写XML文件知识点详解 #### 一、概述 在Java编程中,对XML文件进行读取与写入是一项非常常见的任务。XML(可扩展标记语言)是一种用于标记数据的语言,非常适合用来存储和传输数据。Java提供了多种API来...
在Android应用程序中,读写txt文本文件是常见的需求,特别是在数据持久化或用户交互时。本文将详细讲解如何使用`context.openFileInput()`和`context.openFileOutput()`这两个方法来实现这一功能。这两个方法属于`...
在Java编程语言中,文件读写操作是程序与外部数据交互的基本能力。这篇学习笔记将带你初探这个领域,适合新手入门。我们将讨论如何使用Java进行文件的读取、写入以及一些常见的应用场景。 首先,Java提供了java.io...
本篇文章将深入探讨如何使用Java进行Excel文件的读取与写入操作,主要聚焦于Apache POI库,这是一个广泛使用的开源Java API,专为处理Microsoft Office格式的文件而设计。 首先,我们需要了解Apache POI库中的核心...