Java实现文件的读写
需求:实现基本的读写

package com.sbx.io; import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.Scanner; /**
* Created by BlueLover
* Name:苏半夏
* Date:2021/2/26
* Time:11:00
*/
public class MyFileTest {
/**
* 使用FileOutputStream类向文件中写入数据与使用FileInputStream类从文件中将内容读出来,都存在一点不足,即这两个类值提供了对字节或字节数组的读取方法。由于汉字在文件中占用两个字节,如果使用字节流,读取不好可能会出现乱码现象,此时采用字符流Reader或Writer类即可避免这种现象。
*/ String text;
//读取文件的方法
public void ReadFile(File file){
try{
//读取文件中的内容
FileReader in = new FileReader(file);
char byt[] = new char[2];
int len;
System.out.println("文件中的信息是:");
while((len = in.read(byt))!=-1){
System.out.print(new String(byt,0,len));
text += new String(byt,0,len);
}
in.close();
text = this.text.substring(4);
System.out.println(text);
} catch (StringIndexOutOfBoundsException e1){
System.out.println("文件内容为空");
} catch (Exception e){
e.printStackTrace();
}
} //写入文件的方法
public void WriteFile(File file){
try{
/**
* 为了避免原有内容被覆盖,我们需要先读取出原有的内容
*/
this.ReadFile(file);
//写入文件
FileWriter out = new FileWriter(file);
System.out.println("请输入要写入的内容:");
Scanner scanner = new Scanner(System.in);
String newText = scanner.next();
System.out.println("是否覆盖原有内容?请选择:1-是 2-否 ");
if (Integer.parseInt(scanner.next())==1){
System.out.println("您选择覆盖原有内容");
out.write(newText);
}else{
System.out.println("您选择不覆盖原有内容");
out.write(this.text);
out.write(newText);
}
scanner.close();
out.close();
}catch (Exception e){
e.printStackTrace();
}
} public static void main(String[] args) {
File file = new File("test.txt");
MyFileTest myFileTest = new MyFileTest();
System.out.println("============读取==============");
myFileTest.ReadFile(file);
System.out.println("============写入==============");
myFileTest.WriteFile(file);
System.out.println("============写入后读取==============");
myFileTest.ReadFile(file);
}
} /*
潇洒如我最近却变得有点敏感
半小时收不到你讯息就会坐立不安
都说别爱的太满 这道理知易行难
我还挺乐意享受这份甜中微酸
你的笑像西瓜最中间那一勺的口感
点亮了一整个夏天 星空也为你斑斓
我不会深情款款上演什么套路桥段
我的爱纯粹简单
*/
Java实现文件的读写的更多相关文章
- Java 实现文件随机读写-RandomAccessFile
现有如下的一个需求,向已存在1G数据的txt文本里末尾追加一行文字,内容如下“Lucene是一款非常优秀的全文检索库”.可能大多数朋友会觉得这个需求很easy,说实话,确实easy,然后XXX君开始实 ...
- Java实现文件的读写,复制
import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.FileInputStr ...
- java字符文件的读写
1.java文件读写,首先我们需要导入相应的包:java.io.*; 2.代码如下: package Demo1; import java.io.*; public class FileWirteTe ...
- java 实现文件读写操作
import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; /* JAVA IO 读写操作 20 ...
- java中文件的I/O操作
java中文件的读写操作 (一) (1)java中文件的字节转成字符读操作 FileInputStream fStream = new FileInputStream("test.txt&q ...
- Java的文件读写操作
file(内存)----输入流---->[程序]----输出流---->file(内存) 当我们读写文本文件的时候,采用Reader是非常方便的,比如FileReader,InputStr ...
- java filechannel大文件的读写
java读取大文件 超大文件的几种方法 转自:http://wgslucky.blog.163.com/blog/static/97562532201332324639689/ java 读取一个 ...
- Java程序员的日常—— Properties文件的读写
在日常的Java程序开发中,Properties文件的读写是很常用的.经常有开发系统通过properties文件来当做配置文件,方便用户对系统参数进行调整. 那么本片就来简单的介绍下,如何使用Prop ...
- Java的文件读写操作 <转>
目录: file内存----输入流----程序----输出流----file内存 java中多种方式读文件 判断文件是否存在不存在创建文件 判断文件夹是否存在不存在创建文件夹 java 写文件的三种方 ...
随机推荐
- Little Difference Gym - 101612L 思维
题意: 给你一个数n,你需要输出它可以由那几个数相乘构成,我们设可以由x个数构成,这x个数中最小值为minn,最大值为maxx,那么要求maxx-minn<=1 问你满足上面要求的情况有多少种. ...
- 1562: Fun House
Description American Carnival Makers Inc. (ACM) has a long history of designing rides and attraction ...
- hdu1217 Arbitrage
Problem Description Arbitrage is the use of discrepancies in currency exchange rates to transform on ...
- 一些CTF题目--20/9/3
1. 看源码 POST方法.Extract覆盖. 直接url ?参数不行,因为POST参数不在URL上,GET参数才在 Burpsuite抓包,改成 pass=1&thepassword_1 ...
- leetcode31 下一个排列 字典序
数字的字典序就是比大小 先想几个例子 123_>132 1243-> 1324 ,12453-> 12534 1.不可排的序列就是降序序列 2.两个相同长度的串比大小,前面相同, ...
- 蓝桥杯-摔手机问题【dp】
非常详细的题解:戳这里 例题:poj-3783 Balls Balls Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 115 ...
- codeforces 14D(搜索+求树的直径模板)
D. Two Paths time limit per test 2 seconds memory limit per test 64 megabytes input standard input o ...
- 开源软件ffmpeg使用中的问题
error while decoding MB 20 10, bytestream -13 经过调试,发现这部是 int ret = avcodec_decode_video2(pCodecConte ...
- 深入理解JavaScript中的箭头
箭头函数可以使我们的代码更加简洁,如下: var sum = (a,b) => a+b; JavaScript 充满了我们需要编写在其他地方执行的小函数的情况. 例如: arr.forEach( ...
- QUIC协议和HTTP3.0技术研究
QUIC:基于UDP的安全可靠的HTTP/2传输协议 摘要 QUIC(Quick UDP Internet Connection)是一个新的基于UDP的管线化技术和安全传输协议. QUIC提供: 和H ...