`
shang
  • 浏览: 195980 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

文件输入输出I/O

    博客分类:
  • Java
阅读更多
File主要用于在磁盘上读写文件
1、在程序中,用File和JFileChoose让用户定义或者指定一个文件
2、在文件中,用FileOutputStream和FileInputStream读写字节
3、在文件中,用DataOutputStream和DataInputStream读写原始数据类型值
4、在文件中,用PrintWriter和BufferedReader读写对象
5、在文件中,用ObjectOutputStream和ObjectInputStream读写对象
文件输入输出中常见对象的方法如下:
File对象的几个常用方法:
①exists():文件是否存在
②isFile():判断是否是文件还是目录(真为文件,假为目录)
③list():文件列表,需用String filename[]接受
④length():检测文件大小

FileOutputStream对象的方法:
①outStream.write(字节数组名或数组);
②outStream.close();

FileInputStream对象的方法:
①inStream.read(字节数组名或数组);
②inStream.close();

DataOutputStream对象的方法
①各种基本数据类型:outDataStream.writeInt()/writeLong()/writeFloat()/writeDouble()/writeChar()/writeBoolean()等
②outDataStream.close()
DataInputStream对象的方法:
①各种基本数据类型:inDataStream.readInt()/readLong()/readFloat()/readDouble()/readChar()/readBoolean()等
②inDataStream.close();

PrintWriter对象的方法:
①print()
②println()

ObjectOutputStream对象的方法
①outObjectStream.writeObject()/其他跟DataOutputStream对象的方法一样
②outObjectStream.close()

ObjectInputStream对象的方法
①inObjectStream.readObject()
②inObjectStream.close()

文件输入输出步骤:
一、低级文件操作:
1、输出
File outFile = new File("sample.txt");
FileOutputStream outStream = new FileOutputStream(outFile);
byte[] byteArray = {10,20,30};
outStream.write(byteArray );
outStream.close();
2、输入
File inFile = new File("sample.txt");
FileInputStream inStream = new FileInputStream(inFile);
int fileSize = (int)inFile.length();
byte[] byteArray = new byte[fileSize ];
inStream.read(byteArray);
inStream.close;


二、高级文件操作
(1)基本数据类型操作
1、输出
File outFile = new File("sample.txt");
FileOutputStream outFileStream = new FileOutputStream(outFile);
DataOutputStream outDataStream = new DataOutputStream(outFileStream);
outDataStream.writeInt()/writeChar()/...;
outDataStream.close();
2、输入
File inFile = new File("sample.txt");
FileInputStream inFileStream = new FileInputStream(inFile);
DataInputStream inDataStream = new DataInputStream(inFileStream);
inDataStream.readInt()/readChar()/...;
inDataStream.close();


(2)字符串数据类型操作
1、输出
File outFile = new File("sample.txt");
FileOutputStream outFileStream = new FileOutputStream(outFile);
PrintWriter outStream = new PrintWriter(outFileStream);
outStream.println("hello");
outStream.close();

2、输入
File inFile = new File("sample.txt");
FileReader fileReader = new FileReader(inFile);
BufferedReader bufReader = new BufferedReader(fileReader);
String str = bufReader.readLine();
再进行各种类型转换
如:int i = Integer.parseInt(str);
bufReader.close();
三、对象的输入和输出
前提:定义对象的类要实现序列化(implements Serializable)
1、输出
File outFile = new File("sample.txt");
FileOutputStream outFileStream = new FileOutputStream(outFile);
ObjectOutputStream outObjectStream = new ObjectOutputStream(outFileStream);
产生一对象例:Person person = new Person("zhangsan",21,"male");
outObjectStream.writeObject(person);
outObjectStream.close();

2、输入
File inFile = new File("sample.txt");
FileInputStream inFileStream = new FileInputStream(inFile);
ObjectInputStream inObjectStream = new ObjectInputStream(inFileStream);
//用一个对象接受:
Person person;
person = inObjectStream.readObject();
inObjectStream.close();
分享到:
评论

相关推荐

    怎么使用I/O编程???

    Java中的I/O系统不仅涵盖了文件的读写,还包括网络数据交换、内存数据处理及控制台输入输出等多个方面。 Java通过引入流的概念,将各种不同类型的数据源(如文件、网络、内存)统一抽象为流,简化了程序员对不同...

    Linux下必用的I/O 操作手段I/O文件

    标准输入、输出和错误的文件描述符通常被预定义为0(stdin)、1(stdout)和2(stderr)。文件描述符的使用确保了程序可以正确地读写文件,而无需直接操作文件名。 `open()`函数是用于打开或创建文件的核心系统调用...

    Unix I/O 小结

    Unix I/O系统是操作系统的核心部分,它提供了对文件和设备进行输入输出操作的接口。本文主要总结了Unix下的I/O模型及其相关系统调用。 在Unix中,每个进程都有一个打开文件描述符表,用于存储指向文件inode的指针和...

    java阻塞i/o与非阻塞i/o控制

    在Java编程环境中,I/O(输入/输出)操作是程序与外部世界交互的关键部分,包括读取文件、网络通信等。对于高效的系统设计,理解并掌握阻塞I/O和非阻塞I/O是非常重要的。这两种I/O模型在处理数据传输时有着显著的...

    C#文件管理系统 I/O

    它主要依赖于C#中的输入/输出(I/O)功能,这些功能允许程序与磁盘上的文件进行交互。I/O操作在任何编程语言中都是至关重要的,尤其是在处理文件存储和检索的场景下。在C#中,.NET Framework提供了丰富的类库,如...

    Java文件输入输出(I/O)流.pdf

    Java文件输入输出(I/O)流是Java编程语言中用于处理数据传输的核心概念,主要涉及对文件的读写操作。Java I/O系统是基于流(Stream)的概念构建的,流可以被视为数据的有序序列,既可以是从内存到硬盘的写入,也...

    施耐德电气 Advantys_OTB_分布式I/O产品目录(中文).pdf

    标题中提到的“施耐德电气 Advantys_OTB_分布式I/O产品目录(中文)”暗示了文档内容聚焦于施耐德电气(Schneider Electric)公司出品的Advantys OTB(Open Transition Bus)系列分布式输入/输出(I/O)模块的产品...

    关于I/O流读写文件

    I/O流是Java编程语言中的一种基本概念,用于处理输入输出数据的功能。在Java中,I/O流是通过流的概念来实现的,流是一种抽象表示,用于表示输入设备或输出设备。根据不同的功能,I/O流可以分为输入流和输出流两种。 ...

    windows下六种socket I/O模型示例

    这些模型决定了如何处理输入/输出操作,从而影响程序的性能和效率。本文将深入探讨六种主要的Socket I/O模型,并通过实例解析它们的工作原理和用法。 1. **阻塞I/O(Blocking I/O)** 阻塞I/O是最基础的模型,当...

    实验七 C++的I/O流(验证性)

    我们可以使用不同的I/O函数来实现不同的输入和输出操作,并可以使用文件流来实现文件的读写操作。 六、结论 通过本实验,我们可以掌握 C++的I/O流的各种方式和方法,并可以应用于实际的编程中。掌握 C++的I/O流是...

    Java输入与输出(I、O).

    总的来说,Java的输入输出体系结构非常丰富,涵盖了多种场景和需求。通过灵活运用这些类和接口,开发者可以实现高效、可靠的I/O操作。在实际开发中,根据具体需求选择合适的I/O工具,能极大地提升程序的效率和可维护...

    Java I/O, 2nd Edition

    《Java I/O, 2nd Edition》是一本深入探讨Java输入/输出系统的重要书籍,针对Java平台的I/O系统提供了全面且深入的指南。这本书在第二版中对Java I/O进行了更新,涵盖了从Java 5到Java 8的最新发展,包括NIO.2(New ...

    单片机实验一,I/O端口实验报告(2).pdf

    在“单片机实验一,I/O端口实验报告(2)”中,实验主要关注的是如何操作和利用单片机的I/O端口进行数据输入/输出,以及对输入信号的响应。 实验目标主要分为两部分:一是掌握单片机通用I/O端口的使用,二是熟悉I/O...

    java i/o包流式输入输出和文件操作

    Java I/O 包是Java平台的核心部分,它提供了丰富的类和接口用于处理输入输出操作,包括文件操作和流式输入输出。在这个主题中,我们将深入探讨如何使用Java进行文件管理和流处理。 首先,我们来看看`java.io`包中的...

    易语言I/O控件

    I/O控件是易语言中用于处理输入输出功能的组件,可以实现与硬件设备的交互,如读取传感器数据、控制电机动作等。这些控件提供了丰富的函数和方法,允许程序员编写出能够与外部世界通信的代码。通过I/O控件,程序员...

    文件I/O实验的实验报告

    实验 单片机I/O 口控制实验 一. 实验目的 利用单片机的P1 口作IO 口,使用户学会利用P1 口作为输入和输出口。 二. 实验设备及器件 IBM PC 机 一台

    java对I/O流的处理

    I/O流是指在计算机系统中输入输出之间传输的数据序列。输入流指从外部源(如键盘、磁盘、网络)流向程序的数据,而输出流则是从程序流向外部设备(如显示器、打印机、磁盘)的数据。流式输入输出的一个特点是数据的...

    设计PLC控制系统时的I/O点节省方法.rar

    在设计PLC(可编程逻辑控制器)控制系统时,有效地管理和节省I/O(输入/输出)点至关重要,因为I/O模块的成本、系统复杂性和能耗都与之直接相关。本资料主要探讨了如何在设计过程中实现这一目标。以下是相关知识点的...

Global site tag (gtag.js) - Google Analytics