java文件的I/O
2024-10-10 18:33:06
【原创】
java文件的I/O操作,简单来说就是向文件中写入数据以及从文件中读出数据,这是我们平日做的最多的操作,这里给出两种文件I/O操作,当然还有许多的操作方法,各种流的使用,可谓是高深莫测;不管了,直接怼代码:
package com.jiajia.filedemo; import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter; public class Demo_1 {
public static void main(String[] args) throws Exception{
String filename_input = "/Users/fanjiajia/Desktop/temp";
String filename_output = "/Users/fanjiajia/Desktop/temp2.txt";//若temp1不存在,他会自己给你创建一个
String str = read_1(filename_input);
System.out.println(str);
writer_2(str, filename_output);
}
/**
*文件读取方法一
* @param filename
* @return
* @throws Exception
*/
public static String read_1(String filename) throws Exception{
File f = new File(filename);
FileInputStream f_in = new FileInputStream(f);
InputStreamReader isr = new InputStreamReader(f_in);
BufferedReader buf_reader = new BufferedReader(isr);
String s;
StringBuilder sb = new StringBuilder();
while((s=buf_reader.readLine())!=null){
sb.append(s+"\n");
}
buf_reader.close();
isr.close();
f_in.close();
return sb.toString();
}
/**
* 文件读取方法二
* @param filename
* @return
* @throws Exception
*/
public static String read_2(String filename) throws Exception {
FileReader filereader = new FileReader(filename);
BufferedReader in = new BufferedReader(filereader);
String s ;
StringBuilder sb = new StringBuilder();
while((s=in.readLine())!=null){
sb.append(s+"\n");
}
in.close();
filereader.close();
return sb.toString();
} /**
* 文件写入方法一
* @param str
* @param filename
* @throws Exception
*/
public static void writer_1(String str,String filename ) throws Exception{
//将给定的字符串输出到filename文件中
FileWriter f_writer = new FileWriter(filename);
BufferedWriter buf_writer = new BufferedWriter(f_writer);
buf_writer.write(str);
buf_writer.close();
f_writer.close();
}
/**
* 文件写入方法二
* @param str
* @param filename
* @throws Exception
*/
public static void writer_2(String str,String filename) throws Exception{
File f = new File(filename);
FileOutputStream f_os = new FileOutputStream(f);
OutputStreamWriter os = new OutputStreamWriter(f_os);
BufferedWriter buf_writer = new BufferedWriter(os);
buf_writer.write(str);
buf_writer.close();
os.close();
f_os.close();
}
}
很明显直接使用FileReader 和 FileWriter这两个类并结合BufferedReader/BufferedWriter很方便
其实FileWriter类的对象w直接就可以write,并且在创建是=时候,如果是new FileWriter(。。。,true);第二个参数为true的话,便是在文件末尾写;
最新文章
- HA-0302 退役
- Odoo 路线规则实现机制浅析
- request获取各种信息
- jQuery应用之(二)使用jQuery管理选择结果(荐)
- DevExpress汉化(WinForm)
- hdu 1166 敌兵布阵(线段树单点更新,区间查询)
- php对比辨析之 mysql_escape_string &; mysql_real_escape_string &; addsalshes
- 【redis】02string类型和hash类型
- Android(java)学习笔记113:Android编写代码调用Vibrator震动功能(Bug:按下按钮button始终没有震动)
- CXF自动生成客户端
- DB操作用法总结。
- objective-c 中代码块(blocks)
- Neo4j 第五篇:批量更新数据
- 【WebGL】《WebGL编程指南》读书笔记——第5章
- 学习Yii框架,有哪些比较好的网站
- MarkDown语法学习
- Sqlite操作帮助类
- 模型-视图-控制器模式(MVC模式,10种常见体系架构模式之一)
- Daily Scrum 12.8
- leetcode ex3 找出穿过最多点的直线 Max Points on a Line