java中八种IO操作
package com.mengya.TestIO;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.FileOutputStream;
import java.io.FileInputStream;
import java.io.BufferedOutputStream;
import java.io.FileWriter;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.OutputStreamWriter;
import java.io.InputStreamReader;
public class TestIO {
/**
* Java中的8种IO操作
*/
/*
* 创建文件
*/
public void CreateFile(){
File f=new File("e:\\io.txt");
if(!f.exists()){
try {
f.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
}
/*
* FileOutputStream字节流式的写
*/
public void set1(){
try {
FileOutputStream f=new FileOutputStream("e:\\io.txt");
String str="我的未来不是梦";
byte[] b=str.getBytes();
try {
f.write(b);
f.flush();
f.close();
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
/*
* FileInputStream字节流式的读
*/
public void get1(){
try {
FileInputStream f=new FileInputStream("e:\\io.txt");
byte[] b=new byte[200];
try {
int n=f.read(b);
String str=new String(b,0,n);
System.out.println(str);
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
/*
*
*/
public void set2(){
try {
FileOutputStream f=new FileOutputStream("e:\\io.txt",true);//如果没true则复盖原来的文件,加了true则添加原文件后面
BufferedOutputStream ff=new BufferedOutputStream(f);
String str=new String("我的心跟着希望在动");
try {
ff.write(str.getBytes());
ff.flush();
ff.close();
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
public void get2(){
try {
FileInputStream f=new FileInputStream("e:\\io.txt");
BufferedInputStream ff=new BufferedInputStream(f);
byte[] b=new byte[200];
try {
int n = ff.read(b);
String str=new String(b,0,n);
System.out.println(str);
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
/*
* 字符流
*/
public void set3(){
try {
FileWriter f=new FileWriter("e:\\io.txt",true);
f.write("\r\n我在佛前苦苦求了几千前");//\r\n表示换行
f.flush();
f.close();
} catch (IOException e) {
e.printStackTrace();
}
}
public void get3(){
try {
FileReader f=new FileReader("e:\\io.txt");
char[] c=new char[200];
try {
int n = f.read(c);
String str=new String(c,0,n);
System.out.println(str);
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
public void set4(){
try {
FileWriter f=new FileWriter("e:\\io.txt",true);
BufferedWriter ff=new BufferedWriter(f);
ff.write("希望能感动上天");
ff.flush();
ff.close();
} catch (IOException e) {
e.printStackTrace();
}
}
public void get4(){
try {
FileReader f=new FileReader("e:\\io.txt");
BufferedReader ff=new BufferedReader(f);
char[] c=new char[200];
int n;
try {
n = ff.read(c);
String str=new String(c,0,n);
System.out.println(str);
ff.close();
f.close();
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
/*
* 将字节流转化为字符流
*/
public void h1(){
try {
FileOutputStream f=new FileOutputStream("e:\\io.txt",true);
OutputStreamWriter ff=new OutputStreamWriter(f);
try {
ff.write("\r\n希望你能够出现在我面前");
ff.flush();
ff.close();
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
public void h2(){
try {
FileInputStream f=new FileInputStream("e:\\io.txt");
InputStreamReader ff=new InputStreamReader(f);
char[] c=new char[200];
int n;
try {
n = ff.read(c);
String str=new String(c,0,n);
System.out.println(str);
ff.close();
f.close();
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
/*
* 比较好的读的方式
*/
public void hh(){
try {
FileReader f=new FileReader("e:\\io.txt");
BufferedReader ff=new BufferedReader(f);
while(ff.ready()){
System.out.println(ff.readLine());
}
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
TestIO test=new TestIO();
test.CreateFile();
//test.set1();
//test.get1();
//test.set2();
//test.get2();
//test.set3();
//test.get3();
//test.set4();
//test.get4();
//test.h1();
//test.h2();
test.hh();
}
}
分享到:
相关推荐
Java的IO操作是Java编程中的重要组成部分,它允许开发者处理输入和输出,包括读取文件、写入文件、复制文件、创建目录等。在Java中,IO操作主要依赖于`java.io`包中的类和接口。 1. **新建目录**: 在Java中,我们...
Java的IO操作是Java编程中不可或缺的一部分,它允许程序与外部存储设备进行交互,如读取文件、写入文件、创建文件夹等。在Java中,`java.io`包提供了大量的类和接口来支持这些功能。 首先,我们来看如何创建一个新...
为了提高IO操作的效率,Java提供了缓冲流,如`BufferedInputStream`和`BufferedOutputStream`,以及`BufferedReader`和`BufferedWriter`。这些类在内部维护了一个缓冲区,可以减少实际的物理I/O次数。 五、转换流...
在 Java 中,IO 操作的一般步骤包括:构造一个与介质相关的 IO 对象,以提供一种低层次的方法将数据输入或输出到相应的介质;将与介质相关的对象强制类型转换为它的父类(即抽象 IO 类),并利用该对象构造一个流...
提高Java IO操作的性能 虽然抱怨Java程序性能不佳的呼声由来已久,但实际上,如果开发者在整个开发周期内都能够关注性能问题,Java程序完全可以和C/C++程序一样快。本文分析了Java IO应用中一些常见的性能问题。
这样可以方便地进行增删查改操作,并能与其他IO操作结合,实现数据的存取。 总之,这个Java小项目“Olymplic Games Project(IO版)”是一个很好的实践平台,它涵盖了Java IO流的使用,面向对象的设计原则,以及集合...
Java 中文件 IO 流是指 Java 语言中对文件的输入输出操作,通过定义文件流来实现文件的读写操作。文件流是指在程序中用于文件输入输出的对象, Java 中提供了多种文件流类型,包括 InputStream 和 OutputStream 两大...
下面是一个简单的Java IO操作示例,展示如何使用InputStream和FileOutputStream进行文件的复制: ```java import java.io.*; public class SimpleIOTest { public static void main(String[] args) { try { ...
以下是对标题和描述中涉及的Java IO操作知识点的详细说明: 1. **读取文件内容**: - **按字节读取**:使用`FileInputStream`类,通过`read()`方法逐个读取字节。适用于二进制文件,如图片、音频或视频。 - **按...
Java线程和IO操作是Java编程中的核心概念,它们在构建高效、响应迅速的应用程序时起着至关重要的作用。在Java中,线程用于实现并发执行,而IO操作则涉及数据的读取和写入。这两者结合可以创建能够同时处理多个输入/...
在Java中,IO流操作是用于处理输入与输出的抽象机制,它提供了在不同的数据源和目标之间传输数据的手段。流的概念最早起源于UNIX系统中的管道概念,是一个连续的数据流,可以理解为水流,从源端流向目的端。 一、流...
Java的IO操作是Java编程中的基础且重要的一部分,它提供了对输入输出流的处理,使得程序可以与外部设备(如硬盘、键盘、显示器)进行数据交互。本代码库包含了Java进行基本IO操作的源代码,涵盖了文件的复制、删除、...
总结,Java中的IO流体系庞大且功能强大,理解并熟练掌握IO流的使用对于Java开发者至关重要,无论是进行文件操作、网络通信还是数据存储,都能发挥关键作用。通过学习不同类型的流以及它们的应用场景,开发者可以更加...
Java IO操作是Java编程中的重要组成部分,主要用于处理输入和输出数据。在Java中,IO操作涉及到文件、字节流、字符流以及管道流等多个概念。下面将详细解释这些知识点。 首先,我们来看“文件类”。在Java中,`java...
Java中的IO(输入/输出)系统是编程中不可或缺的一部分,特别是在处理数据的读取、写入、传输和存储时。本教程将深入讲解Java IO流的基础知识,包括其概念、分类、常用类以及如何在实际编程中应用。 一、IO流的概念...
IO 操作是计算机系统中最基本的操作之一,它可以分为同步(Synchronous)和异步(Asynchronous)两种模式。同步IO 是指应用程序在执行IO 操作时,需要等待IO 操作完成后才能继续执行其他操作,而异步IO 则是指应用...
《可扩展的Java IO》是Doug Lea撰写的一本关于如何在Java中实现高效、可扩展输入输出操作的重要著作。这本书对于理解Java平台上的并发和IO机制,特别是对于那些需要处理大量数据或构建高并发应用的开发者来说,是不...