Java IO

简介: Java IO

package testIO;

import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.File;

import java.io.FileNotFoundException;

import java.io.FileReader;

import java.io.FileWriter;

import java.io.IOException;

/**


@author dell

*1.File类

*1.1 常见的构造器

*public File(String pathname) | public File(String parent,String child)

*1.2 访问文件名 文件检测类 获取文件信息

getName() exists() lastModified

getPath() canRead() length()

getAbsoluteFile() isFile()

getParent()

*2.IO原理及流的分类

*2.1字节流 InputStream(输入流),输出流OutputStream

*2.2字符流 Reader(输入流),输出流Writer

*3.文件流

*4.缓冲流

*4.1 BufferedInputStream BufferedReader

BufferedOutputStream BufferedWriter

*5.打印流

*PrintScream(字节打印流) PrintWriter(字符打印流)

*6.转换流

InputStreamReader OuputScreamReader

解码:字节数组字符串

编码:字符串字节数组

*7.数据流

*8.对象流

ObjectInputScream 和ObjectOutputScream 用于存储和读取对象的处理流

序列化(Serialize):用ObjectOutputScream类将一个java对象写入IO流中

private static final long serialVersionUID;

serialVersionUID用来表明类的不同版本间的兼容性

*9.随机存取文件流

*9.1RandomAccessFile类支持的“随机访问”的方式

*9.2对象包含一个记录指针

*long getFilePointer():获取文集记录的指针的当前位置

void seek(long pos):将文件记录的指针定位到pos位置。

/

public class TestIO {

public static void main(String[] args) throws FileNotFoundException,IOException {

/

*1.文件流

*1.1 读取文件

*1.1.1 建立一个文件流对象,加载进流

* FileReader fr = newFileReader(“hello.txt”)

*1.1.2 创建一个临时存放数据的数组

*char [] ch = new char[1024]

*1.1.3 调用对象的读取方法将流中的数据读入到数组中

*fr.read(ch)

*1.2 写入文件

*1.2.1创建流对象,建立数据存放文件

*1.2.2 调用流对象的写入方法,将数据写入流

*1.2.3 关闭流资源,并将流中的数据清空到文件中

*/

// File dir1 = new

File(“C:\Users\dell\Desktop\dir1”);

// File file = new

File(dir1,“hello.txt”);

// System.out.println(file.getAbsolutePath());

// System.out.println(file.getName());

FileReader fr = new FileReader(“C:\Users\dell\Desktop\hello.txt”);

char [] ch = new char[1024];

fr.read(ch);

fr.close();

System.out.println(ch);

BufferedReader br = null;

BufferedWriter bw = null;

//1.创建缓冲流对象

br = new BufferedReader(

new FileReader(“C:\Users\dell\Desktop\hello.txt”));

bw = new BufferedWriter(

new FileWriter(“C:\Users\dell\Desktop\des.txt”));

String str = null;

while((str = br.readLine())!= null) {

bw.write(str);

bw.newLine();

}

bw.flush();

if(bw != null) {

bw.close();

}

}

}


相关文章
|
1月前
|
存储 缓存 安全
Java 中 IO 流、File文件
Java 中 IO 流、File文件
|
15天前
|
Java Unix Windows
|
4天前
|
存储 缓存 Java
Java IO 流详解
Java IO 流详解
13 1
|
8天前
|
存储 Java
Java的`java.io`包包含多种输入输出类
Java的`java.io`包包含多种输入输出类。此示例展示如何使用`FileInputStream`从`input.txt`读取数据。首先创建`FileInputStream`对象,接着分配一个`byte`数组存储流中的数据。通过`read()`方法读取数据,然后将字节数组转换为字符串打印。最后关闭输入流释放资源。`InputStream`是抽象类,此处使用其子类`FileInputStream`。其他子类如`ByteArrayInputStream`、`ObjectInputStream`和`BufferedInputStream`各有特定用途。
16 1
|
9天前
|
存储 Java
java IO接口(Input)用法
【5月更文挑战第1天】Java的`java.io`包包含多种输入输出类。此示例展示了如何使用`FileInputStream`从`input.txt`读取数据。首先创建`FileInputStream`对象,接着创建一个字节数组存储读取的数据,调用`read()`方法将文件内容填充至数组。然后将字节数组转换为字符串并打印,最后关闭输入流。注意,`InputStream`是抽象类,此处使用其子类`FileInputStream`。其他子类如`ByteArrayInputStream`、`ObjectInputStream`和`BufferedInputStream`各有特定用途。
20 2
|
11天前
|
存储 Java Linux
【Java EE】 文件IO的使用以及流操作
【Java EE】 文件IO的使用以及流操作
|
16天前
|
存储 Java 数据库
[Java 基础面试题] IO相关
[Java 基础面试题] IO相关
|
16天前
|
缓存 Java API
Java NIO和IO之间的区别
NIO(New IO),这个库是在JDK1.4中才引入的。NIO和IO有相同的作用和目的,但实现方式不同,NIO主要用到的是块,所以NIO的效率要比IO高很多。在Java API中提供了两套NIO,一套是针对标准输入输出NIO,另一套就是网络编程NIO。
16 1
|
19天前
|
Java
Java基础教程(12)-Java中的IO流
【4月更文挑战第12天】Java IO涉及输入输出,包括从外部读取数据到内存(如文件、网络)和从内存输出到外部。流是信息传输的抽象,分为字节流和字符流。字节流处理二进制数据,如InputStream和OutputStream,而字符流处理Unicode字符,如Reader和Writer。File对象用于文件和目录操作,Path对象简化了路径处理。ZipInputStream和ZipOutputStream则用于读写zip文件。
|
25天前
|
存储 缓存 Java
【Java IO系列】那字节流和字符流有什么区别?
而如果使用缓存流,一次性从文件里读取多个字节到缓存中,可以减少系统调用同时也减少了磁盘读取,提高了读取的效率。所以字符流是一个很方便的流了,没有必要把一个方便的流转换成一个不方便的流。,涉及到用户空间和内核空间之间的上下文切换,这些切换是很昂贵的。从输入流读取下一个数据字节,值字节以0到255范围内的。好的面试官,Java IO有两个参与对象,一个是。,这个基类提供了3个方法可以来读取字节流。,同样是提供了3个方法来支持字符流读取。好的,有这些不同之处,主要是3个方面。是这样的,虽然字节流比字符流的。
19 1
【Java IO系列】那字节流和字符流有什么区别?