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();

}

}

}


相关文章
|
3月前
|
存储 Java
【IO面试题 四】、介绍一下Java的序列化与反序列化
Java的序列化与反序列化允许对象通过实现Serializable接口转换成字节序列并存储或传输,之后可以通过ObjectInputStream和ObjectOutputStream的方法将这些字节序列恢复成对象。
|
1月前
|
存储 缓存 Java
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
这篇文章详细介绍了Java中的IO流,包括字符与字节的概念、编码格式、File类的使用、IO流的分类和原理,以及通过代码示例展示了各种流的应用,如节点流、处理流、缓存流、转换流、对象流和随机访问文件流。同时,还探讨了IDEA中设置项目编码格式的方法,以及如何处理序列化和反序列化问题。
67 1
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
|
2月前
|
安全 Java API
【Java面试题汇总】Java基础篇——String+集合+泛型+IO+异常+反射(2023版)
String常量池、String、StringBuffer、Stringbuilder有什么区别、List与Set的区别、ArrayList和LinkedList的区别、HashMap底层原理、ConcurrentHashMap、HashMap和Hashtable的区别、泛型擦除、ABA问题、IO多路复用、BIO、NIO、O、异常处理机制、反射
【Java面试题汇总】Java基础篇——String+集合+泛型+IO+异常+反射(2023版)
|
1月前
|
Java 数据处理 开发者
揭秘Java IO流:字节流与字符流的神秘面纱!
揭秘Java IO流:字节流与字符流的神秘面纱!
35 1
|
1月前
|
自然语言处理 Java 数据处理
Java IO流全解析:字节流和字符流的区别与联系!
Java IO流全解析:字节流和字符流的区别与联系!
76 1
|
30天前
|
Java
Java 中 IO 流的分类详解
【10月更文挑战第10天】不同类型的 IO 流具有不同的特点和适用场景,我们可以根据具体的需求选择合适的流来进行数据的输入和输出操作。在实际应用中,还可以通过组合使用多种流来实现更复杂的功能。
46 0
|
2月前
|
Java 大数据 API
Java 流(Stream)、文件(File)和IO的区别
Java中的流(Stream)、文件(File)和输入/输出(I/O)是处理数据的关键概念。`File`类用于基本文件操作,如创建、删除和检查文件;流则提供了数据读写的抽象机制,适用于文件、内存和网络等多种数据源;I/O涵盖更广泛的输入输出操作,包括文件I/O、网络通信等,并支持异常处理和缓冲等功能。实际开发中,这三者常结合使用,以实现高效的数据处理。例如,`File`用于管理文件路径,`Stream`用于读写数据,I/O则处理复杂的输入输出需求。
|
1月前
|
存储 Java 程序员
【Java】文件IO
【Java】文件IO
35 0
|
2月前
|
数据采集 Java 数据挖掘
Java IO异常处理:在Web爬虫开发中的实践
Java IO异常处理:在Web爬虫开发中的实践
|
3月前
|
Java 数据处理
Java IO 接口(Input)究竟隐藏着怎样的神秘用法?快来一探究竟,解锁高效编程新境界!
【8月更文挑战第22天】Java的输入输出(IO)操作至关重要,它支持从多种来源读取数据,如文件、网络等。常用输入流包括`FileInputStream`,适用于按字节读取文件;结合`BufferedInputStream`可提升读取效率。此外,通过`Socket`和相关输入流,还能实现网络数据读取。合理选用这些流能有效支持程序的数据处理需求。
46 2