JAVA-随机读写文件
2024-08-26 14:25:03
File类通过使用 . 来获取当前路径,从而取得文件。
File f = new File(".\\Res\\Temp.txt");
或者直接使用空构造函数:
File f = new File("");
此时f.getpath()相当于当前目录。
之后读取文件可以使用流:
BufferedReader br = new BufferedReader(new FileReader(f));
来读取,其中FileReader是InputStreamReader的子类。
想清空文件内容直接使用
FileWriter fw = new FileWriter();
Fw.write("");
就可以。 如果想随机读写文件,则应当RandomAccessFile类来进行。
此类包含一个pointer可以使用seek方法改变pointer位置。
RandomAccessFile raf = new RandomAccessFile(f.getCanonicalPath(),"rws"); raf.seek(raf.length());
raf.write(bb.array());
通过这种方法实现追加写,写入时记得
Charset cs = Charset.forName("UTF-8");
ByteBuffer bb = cs.encode(cb);
变成UTF编码存入文件。
RandomAccessFile也有readbyte等方法,记得使用decode方法解决编码的问题,不然会产生乱码。 还有一点要注意就是使用seek的时候,新的写入并不是插入(Insert),而是覆写(Overwriting),写入时要多加注意。
最新文章
- 【cs229-Lecture15】奇异值分解
- android百度地图中的地图缩放级别
- ueditor爬坑
- 分享一个linux和linux的文件传输【scp无密码传输】
- MVC 4 插件化架构简单实现
- 老李分享:持续集成学好jenkins之解答疑问
- Python杨辉三角形
- Java集合-----java集合框架常见问题
- 启动Cognos时报0106错误
- spring Boot 出现:org.springframework.context.ApplicationContextException: Unable to start ServletWebServerApplicationContext due to missing ServletWebServerFactory bean.
- qlikview 权限管理和sso集成
- Gorm使用详解
- Jetty部署
- 更改MySQL数据库的编码为utf8mb4
- (转)驱动程序安装类(C#)
- 03-03 java 顺序语句结构,选择结构if语句
- springBoot注解大全JPA注解springMVC相关注解全局异常处理
- php面试题之一——php核心技术
- day7 面向对象class()学习
- [Javascirpt] Immediately-Invoked function!!! IMPORTANT