`
zds420
  • 浏览: 202739 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

DataInputStream和DataOutputStream的简单应用

    博客分类:
  • J2SE
阅读更多
DataInputSteam和DataOutputSteam是没有必要存储整个对象的信息,
而只是要存储一个对象的成员数据,
成员数据的类型假设都是Java的基本数据类型,
这样的需求不必使用到与Object输入、输出相关的流对象,
可以使用DataInputStream、DataOutputStream来写入或读出数据



package com.study;

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

import com.study.Books;


public class DataStreamBooks {
	
	public static void main(String[] args) {
		//使用DataInputStream,DataOutputStream写入文件且从文件中读取数据。
		Books [] books = {new Books("Java基础教程","2010-1-2",10),
						new Books("Javascript基础教程","2010-2-2",20),
						new Books("Servlet基础教程","2010-3-2",30),
						new Books("JSP基础教程","2010-4-2",40)
						};
		try {
			//Data Stream写到输入流中
			DataOutputStream dos = new DataOutputStream(new FileOutputStream("F:\\project\\study\\WebRoot\\datasteam.txt"));
			
			for(Books book : books) {
				dos.writeUTF(book.getBook_name());
				dos.writeUTF(book.getBook_date());
				dos.writeInt(book.getMoney());
			}
			dos.flush();
			dos.close();
			
			DataInputStream dis = new DataInputStream(new FileInputStream("F:\\project\\study\\WebRoot\\datasteam.txt"));
 
			for(Books book : books) {
				System.out.print(dis.readUTF());
				System.out.print("==========");
				System.out.print(dis.readUTF());
				System.out.print("==========");
				System.out.println(dis.readInt());
			}
			
			dis.close();
			
		}
		catch(IOException e) {
			e.printStackTrace();
		}
	}
	
}

   DataStreamBooks.java

 

 

package com.study;

public class Books {
	
	private String book_name;
	private String book_date;
	private int money;
	
	public Books(String book_name,String book_date,int money) {
		this.book_name = book_name;
		this.book_date = book_date;
		this.money = money;
	}
	
	public String getBook_name() {
		return book_name;
	}
	public void setBook_name(String book_name) {
		this.book_name = book_name;
	}
	public String getBook_date() {
		return book_date;
	}
	public void setBook_date(String book_date) {
		this.book_date = book_date;
	}
	public int getMoney() {
		return money;
	}
	public void setMoney(int money) {
		this.money = money;
	}
	
}

   Books.java

 

 

分享到:
评论

相关推荐

    java DataInputStream和DataOutputStream详解及实例代码

    Java中的`DataInputStream`和`DataOutputStream`是用于处理基本数据类型流的类,它们都位于`java.io`包中。这两个类是为了解决在进行网络通信或磁盘存储时,需要高效、有序地读写Java基本数据类型的问题。 `...

    【IT十八掌徐培成】Java基础第16天-05.DataInputStream-DataOutputStream-FilterStream.zip

    在Java的I/O系统中,`DataInputStream`和`DataOutputStream`以及`FilterStream`是处理数据输入和输出的关键类,它们对于程序的文件操作和网络通信起着至关重要的作用。本教程将深入讲解这些类的功能、用法以及它们在...

    Java数据输入输出流.pdf

    此外,DataInputStream和DataOutputStream也可应用于网络连接,通过Socket对象进行数据的收发,提供了一种高效且类型安全的数据传输方式。 总的来说,Java数据输入输出流提供了一种高级的数据处理机制,使得开发...

    实验3 输入输出流的实验.doc

    本实验主要介绍了 Java 中的输入输出流,包括 DataInputStream、DataOutputStream、PrintStream 等类的使用,以及对象的序列化和反序列化。通过实验,我们可以掌握流的概念分类、字符串常用操作方法、流的构造和应用...

    Java中使用数据输入输出流实现字符串加解密的代码清单.pdf

    在Java编程中,数据输入输出流(DataInputStream和...在上述代码示例中,它们被用来实现简单的字符串加解密和文件操作,但在实际应用中,通常会结合更复杂的加密算法和安全措施来保证数据的机密性和完整性。

    深入解析Java编程中面向字节流的一些应用

    比如,DataInputStream和DataOutputStream是两个常用的过滤流,它们分别包装InputStream和OutputStream,实现了对基本数据类型的二进制格式化读写。这两个类实现了DataInput和DataOutput接口,定义了诸如readInt(), ...

    Java网络编程实验报告.pdf

    本实验报告主要介绍了Java网络编程的基本概念和实现方法,通过设计和实现一个简单的客户端/服务器应用程序,了解Java网络编程的基本原理和实现方法。 知识点1:Java 网络编程基础 Java 网络编程是指使用 Java 语言...

    Android应用源码之IOStreamSample_Android.zip

    5. DataInputStream和DataOutputStream:用于读写基本数据类型。 6. ObjectInputStream和ObjectOutputStream:用于序列化和反序列化对象。 四、I/O流的使用场景 1. 文件操作:读取和写入文件内容。 2. 网络通信:...

    JAVA学习笔记4

    在【部分内容】中,我们看到了两个主要的例子,第一个是简单的TCP服务端和客户端的代码实现,第二个是使用DataInputStream和DataOutputStream进行TCP通信的例子。 1. TCP服务端和客户端的基本通信: - 服务端代码...

    基于javasocket的网络围棋设计.doc

    为了实现双向通信,通常需要使用InputStream和OutputStream或者其子类DataInputStream和DataOutputStream来处理数据的发送和接收。 在实验步骤中,首先创建了一个简单的命令行服务器/客户端程序,服务器端接收到...

    基于TCP的Java聊天系统雏形.pdf

    3. 数据传输方式的实现:数据的传输方式使用了DataInputStream和DataOutputStream,它们分别对InputStream和OutputStream进行了一层封装,可以实现汉字的传送,而不是字节流的传送。 四、基于TCP的Java聊天系统雏形...

    2022年Java中基本数据类型与流Java教程.docx

    在处理数据输入和输出时,Java提供了DataInputStream和DataOutputStream类,这两个类主要用于将基本数据类型和字符串在字节流中进行读写操作。它们分别实现了DataInput和DataOutput接口,这两个接口定义了一系列方法...

    使用JAVA编写网络通信程序.docx

    过滤流(DataInputStream和DataOutputStream)既是FilterInputStream和FilterOutputStream的子类,也实现了DataInput和DataOutput接口。DataInput接口提供了读取基本数据类型、读取行和指定长度字节的方法,如...

    Java输入输出流(IO)教程

    6)讲解数据流的基本用法,特别是DataInputStream和DataOutputStream的使用案例;7)说明RandomAccessFile类的使用技巧,并给出了具体的读写示例;8)简述Java中标准输入输出流(如System类的输入输出流)的操作方法...

    多线程技术在Android应用程序与服务器通信的应用.pdf

    通过创建Socket实例,可以建立到服务器的连接,然后通过DataInputStream和DataOutputStream进行数据的读写。 4. **测试策略**:在开发过程中,测试是非常关键的一环。文档提到了“80-20原则”,意味着大部分错误...

    使用JAVA编写网络通信程序.pdf

    - 过滤流:DataInputStream和DataOutputStream是FilterInputStream和FilterOutputStream的子类,并且实现了DataInput和DataOutput接口。DataInput接口提供了从流中读取基本数据类型、读取行和读取特定长度字节的...

    JAVA语言SOCKET机制的研究.pdf

    DataInputStream和DataOutputStream是过滤流(FilterInputStream和FilterOutputStream)的子类,同时实现了DataInput和DataOutput接口。DataInputStream可以从输入流中读取各种基本类型的数据,如boolean、int等,而...

    简单的C/S应用

    在本案例中,我们构建了一个基于Socket编程的简单C/S应用。 #### 二、Socket编程简介 Socket是TCP/IP协议族中的一个重要概念,用于在网络中的两台计算机之间建立连接并进行数据传输。在Java中,可以通过`java.net....

    Java 网络通信程序设计

    在 ChatClient.java 中,我们使用 DataInputStream 和 DataOutputStream 类来读取和写入数据。 4. 线程 线程是指在程序中使用多线程来实现并发执行的技术。Java 语言提供了 Thread 类来实现这种技术。Thread 类...

    java网络作业.ppt

    在实际编程中,除了Socket和ServerSocket,我们还会用到`java.io`包中的流类,如InputStream和OutputStream,以及它们的子类,如DataInputStream和DataOutputStream,用于处理字节流的读写。同时,异常处理也是必不...

Global site tag (gtag.js) - Google Analytics