java字符文件流

字符文件流

java.io 包几乎包含了所有操作输入、输出需要的类。

读取控制台输入

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

从控制台读取多字符输入

从BufferedReader对象读取一个字符要使用 read() 方法。

int read() throws IOException

每次调用 read 方法,它从输入流读取一个字符并作为 整型返回,结束时返回-1.

从控制台读取字符串

使用BufferedReader的 readLine() 方法

String readLine() throws IOException

输入我们可以考虑 java.Scanner类

控制台输出

能够使用printprintln即可

读写文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-txmdJ2jl-1612433221443)(io.png)]

主要学习 FileInputStream 和 FileOutputStream

FileInputStream

用于从文件读取数据

初始化
InputStream f = new FileInputStream("C:/java/hello");

File f= new File("C:/java/hello");
FileInputStream fip = new FileInputStream(f);
InputStreamReader reader = new InputStreamReader(fip, "UTF-8"); // 解决乱码问题
操作方法
方法描述
void close()关闭此文件输入流并释放相关系统资源
int read(int r)从 InputStream 对象读取指定字节的数据,返回为整数值,返回下一字节的数据,如果是结尾返回-1
void finalize()清除与该文件的连接,确保在不再引用文件输入流时调用 close方法,会抛出 IOException异常
int available()返回下一次对此输入流调用的方法可以不受阻塞地从此输入流读取的字节数,返回一个整数值

每一个方法可能抛出 IOException异常,要注意捕获。

FileOutputStream

用于创建一个文件并向文件中写数据。如果不存在文件则会创建文件。

初始化
OutputStream f = new FileOutputStream("C:/java/hello");

File f= new File("C:/java/hello");
OutputStream out = new FileOutputStream(f);
操作方法
方法描述
void close()关闭此文件输入流,并释放与此流有关的系统资源
void write(int w)把指定字节写到输出流中。
void finalize()此方法清除与该文件的连接,确保在不在引用文件输入流时调用其 close 方法,抛出 IOException异常

close方法和 finalize 方法会抛出 IOException异常,注意捕获。

文件目录

创建目录

  1. mkdir() 方法创建一个文件夹,成功返回true,失败返回false。

  2. mkdirs() 方法创建一个文件夹和它所有的父文件夹。

     String str = "/tmp/user/bin";
     File f = new File(str);
     f.mkdirs();
    

读取目录

一个目录其实就是一个 File 对象,它包含其他文件和文件夹。

如果创建一个 File对象并且它是一个目录,name调用 isDirectory 方法会返回true

可以通过调用该对象的 list() 方法,来提取它包含的文件和文件夹列表。

File f = new File("/tmp");
// 判断是否是一个目录
f.isDirectory();
// 获取该路径下的所有文件夹和文件列表
String s[] = f1.list(); 

删除目录或文件

删除文件可以使用java.io.File.delete()方法。

File f  = new File("/tmp/java");

f.delete();

文件
删除文件可以使用java.io.File.delete()方法。

File f  = new File("/tmp/java");

f.delete();

需要注意的是,如果一个文件夹内存在文件,那就不能直接删除文件夹,要先删除文件,然后删除文件夹。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值