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 写文件的三种方 ...
随机推荐
- 【uva 10048】Audiophobia(图论--Floyd算法)
题意:有一个N点M边的无向带权图,边权表示路径上的噪声值.有Q个询问,输出 x,y 两点间的最大噪声值最小的路径的该值.(N≤100,M≤1000,Q≤10000) 解法:N值小,且问多对点之间的路径 ...
- 二分图最大权匹配问题&&KM算法讲解 && HDU 2255 奔小康赚大钱
作者:logosG 链接:https://www.cnblogs.com/logosG/p/logos.html (讲解的KM算法,特别厉害!!!) KM算法: 现在我们来考虑另外一个问题:如果每个员 ...
- 同时拿到BATJMD的Offer是怎样的一种体验?
写在前面 又到了收割Offer的季节,你准备好了吗?曾经的我,横扫各个大厂的Offer.还是那句话:进大厂临时抱佛脚是肯定不行的,一定要注重平时的总结和积累,多思考,多积累,多总结,多复盘,将工作经历 ...
- OpenStack-知识点补充
登录计算节点查看进程 [root@compute ~]# ps aux | grep kvm root 824 0.0 0.0 0 0 ? S< 10:19 0:00 [kvm-irqfd-cl ...
- LVS-DR 模式
SNAT(Source Network Address Translation)源地址转换,类似家里路由器设置,内网地址向外访问时,发起访问的内网ip地址转换为指定的 IP 地址 DNAT(Desti ...
- 2018ACM上海大都会赛 F Color it【基础的扫描线】
题目:戳这里 题意:有n*m个点全为白色,q个圆,将q个圆内所有的点都染成黑色,问最后剩下多少白色的点. 解题思路:每一行当做一个扫描线,扫描所有的圆,记录每一行在圆中的点即可,O(n*q). 附ac ...
- haut-1282 ykc想吃好吃的
1282: ykc想吃好吃的 时间限制: 1 秒 内存限制: 128 MB提交: 706 解决: 89提交 状态 题目描述 一天,ykc在学校闲的无聊,于是决定上街买点吃的,ykc很懒,本来就不是 ...
- HDU 4675 GCD of Sequence(莫比乌斯反演 + 打表注意事项)题解
题意: 给出\(M\)和\(a数组\),询问每一个\(d\in[1,M]\),有多少组数组满足:正好修改\(k\)个\(a\)数组里的数使得和原来不同,并且要\(\leq M\),并且\(gcd(a_ ...
- μC/OS-III---I笔记3---时间管理
时间管理相关函数,其实深入根本的理解就是一些对时间任务相关变量,数据结果进行修改的函数这样方便对应任务查找延时等时间相关的任务有没有到期.前面的时间相关的函数是这些操作的基 1.延时函数 OsTIme ...
- linux 必备 学习 资源 汇总 大全!
Linux https://www.linux.com/ https://youtu.be/CE4WeUNFX2g https://www.youtube.com/watch?v=JzsLkbwi1L ...