在Java中使用输入输出函数进行读写操作
Java是一门以面向对象为基础的编程语言,针对读写操作,Java提供了丰富的IO类库,可以方便地进行文件或控制台的输入输出操作。本文将介绍Java中如何使用输入输出函数进行读写操作。
一、读取控制台输入
在Java中读取控制台的输入,可以使用Scanner或BufferedReader。
1. Scanner
Scanner类是Java中一个常用的输入类,可用于将标准输入(即键盘输入)转换成文本或其他类型的值。
实例代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
System.out.println("你输入的是:" + input);
}
}
以上代码创建了一个Scanner对象,用于从标准输入读取数据。我们可以使用next()方法读取字符串类型的数据,使用nextInt()方法读取整型数据,使用nextDouble()方法读取浮点型数据等。读取完数据后,可以通过System.out.println()方法输出读取到的数据。
2. BufferedReader
BufferedReader是一个比Scanner更细致的输入类,它可以实现低层次的控制台输入读取。在使用BufferedReader之前,需要将System.in转换成Reader对象。
实例代码:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String str = reader.readLine();
System.out.println("你输入的是:" + str);
}
}
以上代码首先创建了一个BufferedReader对象,然后使用new InputStreamReader(System.in)语句将标准输入转换成Reader对象。读取完数据后,可以通过System.out.println()方法输出读取到的数据。
二、读写文件
Java中提供了许多读取和写入文件的类和方法,十分方便。我们可以使用FileReader、FileWriter、BufferedReader等类来进行文件的读取和写入。
1. 文件读取
在Java中,我们可以使用FileReader类或BufferedReader类来读取文件。
FileReader实例代码:
import java.io.FileReader;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
FileReader reader = new FileReader("D:\\file.txt");
int ch;
while((ch = reader.read()) != -1){
System.out.print((char)ch);
}
reader.close();
}
}
以上代码使用FileReader类读取一个文件,先创建FileReader对象,然后使用read()方法读取文件中的每一个字符。利用while循环将读取的字符输出即可。读取完毕后,需要使用close()方法关闭流。
BufferedReader实例代码:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new FileReader("D:\\file.txt"));
String line;
while((line = reader.readLine()) != null){
System.out.println(line);
}
reader.close();
}
}
以上代码使用BufferedReader类读取一个文件,可以一次读取一行数据。读取完毕后,需要使用close()方法关闭流。
2. 文件写入
在Java中,我们可以使用FileWriter类或BufferedWriter类来写入文件。
FileWriter实例代码:
import java.io.FileWriter;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
FileWriter writer = new FileWriter("D:\\file.txt");
String str = "Hello World!";
writer.write(str);
writer.close();
}
}
以上代码使用FileWriter类写入一个文件,先创建FileWriter对象,然后使用write()方法将字符串写入文件中即可。写入完毕后,需要使用close()方法关闭流。
BufferedWriter实例代码:
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
BufferedWriter writer = new BufferedWriter(new FileWriter("D:\\file.txt"));
String str = "Hello World!";
writer.write(str);
writer.newLine();
writer.close();
}
}
以上代码使用BufferedWriter类写入一个文件,除了使用write()方法将字符串写入文件外,还可以使用newLine()方法在写入一行数据时添加换行符。写入完毕后,需要使用close()方法关闭流。
三、Java中常用的IO类
在Java中,常用的IO类如下:
1. ByteArrayInputStream/ByteArrayOutputStream:用于读写字节数组。
2. FileInputStream/FileOutputStream:用于读写文件。
3. FilterInputStream/FilterOutputStream:用于增强字节流。
4. InputStreamReader/OutputStreamWriter:用于读写文本文件或控制台输入输出。
5. PipedInputStream/PipedOutputStream:用于将管道里的数据传输。
6. PrintStream/PrintWriter:用于格式化输出。
7. BufferedInputStream/BufferedOutputStream:用于增强字节流,增加读写效率。
8. BufferedReader/BufferedWriter:用于读写文本文件,增加读写效率和易读性。
9. DataInputStream/DataOutputStream:用于读写基本数据类型和字符串。
10. ObjectInputStream/ObjectOutputStream:用于读写对象。
以上类都位于java.io包中,读者可以根据需要进行使用。
四、小结
Java提供了丰富的IO类库,方便开发者进行控制台输入输出和文件读写操作。本文介绍了Java中如何使用输入输出函数进行读写操作,包括控制台输入、文件读写、常用的IO类等。通过学习本文,相信读者对Java中的读写操作已有一定的了解,可以在以后的编程实践中熟练运用。
