内容正文:
编写说明:2026版吉林省高职分类考试《信息工程类(电子与信息类)考纲百套卷》,依据吉林省高职分类(对口招生)考试各类专业综合卷考试科目及纲要(2021版),种信息工程类(电子与信息类)专业综合卷考试科目及纲要编写。本专辑共150份试卷两部分组成,第一部分是按考纲的考点要求编写的120份知识点训练卷,第二部分是针对6门课程的掌握要求,编写的30份常考题训练卷。
本试卷是吉林省高职分类考试《信息工程类(电子与信息类)考纲百套卷》的第37卷,是知识点训练卷。按“Java程序设计”考试纲要(七)Java的输入/输出的五点知识点要求编写,其五点要求是:
1.理解File类的File(String pathname)、File(String parent,String child)构造方法和getName()、getParent()、getPath()、renameTo(File dest)、createNewFile()、createTempFile(String prefix,String suffix)、delete()、exists()、isAbsolute()、isDirectory()、isFile()、list()、mkdir()等常用方法的功能和使用方法。
2.理解输入/输出流的概念。
3.了解流的分类(输入流与输出流,字节流与字符流,节点流与处理流)。
4.掌握常用字节流:FileInputStream、FileOutputStream、PipedInputStream、PipedOutputStream、BufferedInputStream、BufferedOutputStream的使用方法。
5.掌握常用字符流:FileReader、FileWriter、PipedReader、PipedWriter 、BufferedReader、BufferedWriter、InputStreamReader、OutputStreamWriter的使用方法。
2026版吉林省《信息工程类(电子与信息类)考纲百套卷》 第37卷
《Java程序设计》
(七)Java的输入/输出-知识点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、选择题(本大题共10小题,每小题2分,共20分)
1. 有如下代码:
File file = new File("C:/Users/test.txt");
String name = file.getName();
执行上述代码后,name的值是( )
A. C:/Users
B. test.txt
C. C:/Users/test.txt
D. 以上都不对
2. 下列File类的构造方法中,能够根据父路径和子路径创建File对象的是( )
A. File(String pathname)
B. File(String parent, String child)
C. File(File parent, String child)
D. File(String child, String parent)
3.下面关于File类的list()方法的描述,正确的是( )
A. list()方法只能用于文件对象,不能用于目录对象
B. list()方法返回的是一个File对象数组
C. 如果File对象表示的目录不存在,list()方法返回null
D. list()方法返回的数组中包含隐藏文件和子目录
4.以下关于流的分类说法,正确的是( )
A. 字节流以字符为单位读写数据
B. 字符流适合处理二进制文件
C. 节点流直接操作数据源
D. 处理流不能包装其他流
5.以下代码使用 FileOutputStream 写入文件,说法正确的是( )
try {
FileOutputStream fos = new FileOutputStream("test.txt");
fos.write(65);
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
A. 该代码会将字符 'A' 写入文件 test.txt 中
B. 该代码会将数字 65 以字符串形式写入文件 test.txt 中
C. 如果文件 test.txt 不存在,会抛出异常
D. 该代码没有使用 BufferedOutputStream 包装,性能一定很差
6.要将字节流转换为字符流,可以使用( )
A. BufferedInputStream
B. BufferedOutputStream
C. OutputStreamWriter
D. InputStreamReader
7.以下代码使用 FileWriter 写入文本文件,说法正确的是( )
try {
FileWriter fw = new FileWriter("test.txt");
fw.write("Hello");
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
A. 该代码会将字符串 "Hello" 以字节形式写入文件 test.txt 中
B. 如果文件 test.txt 已经存在,会抛出异常
C. 该代码使用 FileWriter 写入文本文件,不会有字符编码问题
D. 可以使用 BufferedWriter 包装 FileWriter 来提高写入性能
8.以下属于处理流的是( )
A. FileInputStream
B. FileReader
C. BufferedInputStream
D. FileOutputStream
9.以下关于字节流和字符流的使用场景,说法正确的是( )
A. 处理图片、音频等二进制文件时,应该使用字符流
B. 处理文本文件时,应该使用字节流
C. 处理网络通信时,只能使用字节流
D. 处理文本文件时,使用字符流更方便
10.使用 BufferedReader 读取文件时,如果文件内容为空,readLine() 方法会( )
A. 抛出 IOException 异常
B. 返回 null
C. 返回一个空字符串
D. 程序进入死循环
二、判断题(本大题共10小题,每小题2分,共20分)
1.使用 File(String pathname) 构造方法创建 File 对象时,pathname 必须是已经存在的文件或目录路径。( )
2.renameTo(File dest) 方法可以跨不同的文件系统对文件进行重命名操作。( )
3.File类可以表示文件和目录路径名。( )
4.Reader和Writer是字节流的抽象基类。( )
5. 输入流只能从文件中读取数据,输出流只能向文件中写入数据。( )
6. InputStreamReader可以将字节流转换为字符流。( )
7. BufferedInputStream 和 BufferedOutputStream 主要是为了提高数据读写的安全性。( )
8. PipedReader 和 PipedWriter 是字符流。( )
9. 使用完流后不需要手动关闭,Java垃圾回收器会自动关闭。( )
10. File类的isFile()方法可以判断该File对象是否表示一个文件。( )
三、填空题(本大题共5小题,每题2分,共10分)
1. 使用 File(String parent, String child) 构造方法创建 File 对象时,parent 表示 __________,child 表示 __________。
2. File 类的 __________ 方法用于删除此抽象路径名表示的文件或目录。
3.创建表示"test.txt"文件的File对象的代码是File file = ______ File("test.txt");
4. 使用 FileInputStream 读取文件时,如果文件不存在,会抛出 ____________ 异常。
5. FileReader 是从文件中读取 ____________ 数据的字符流。
四、读程序写结果题(本大题共5小题,每题5分,共25分)
1.以下程序的运行结果是 。
import java.io.File;
public class FileTest1 {
public static void main(String[] args) {
File file = new File("test.txt");
System.out.println("文件存在: " + file.exists());
System.out.println("是文件: " + file.isFile());
System.out.println("是目录: " + file.isDirectory());
}
}
以下程序的运行结果是 。
import java.io.*;
public class FileIOTest2 {
public static void main(String[] args) {
try (FileInputStream fis = new FileInputStream("data.txt")) {
int data;
while ((data = fis.read()) != -1) {
System.out.print((char) data);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
以下程序的运行结果是 。
import java.io.*;
public class BufferedTest {
public static void main(String[] args) {
try (BufferedWriter bw = new BufferedWriter(new FileWriter("buffered.txt"))) {
bw.write("第一行");
bw.newLine();
bw.write("第二行");
} catch (IOException e) {
e.printStackTrace();
}
}
}
4.有test.txt且文档内容为“Hello JAVA”,以下程序的运行结果是______。
import java.io.FileReader;
import java.io.IOException;
public class StreamTest5 {
public static void main(String[] args) {
try {
FileReader fr = new FileReader("test.txt");
int data;
while ((data = fr.read()) != -1) {
System.out.print((char) data);
}
fr.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
5.以下程序的运行结果是______。
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
public class StreamTest8 {
public static void main(String[] args) {
try {
FileWriter fw = new FileWriter("output.txt");
BufferedWriter bw = new BufferedWriter(fw);
String[] lines = {"Line 1", "Line 2", "Line 3"};
for (String line : lines) {
bw.write(line);
bw.newLine();
}
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
五、编程题(本大题共5小题,每题5分,共25分)
1.编写一个 Java 程序,要求用户输入源文件路径、目标文件路径和目标文件编码,将源文件复制到目标文件并转换为指定编码。
2.编写一个 Java 程序,要求用户输入文件路径和一个字符,统计该文件中该字符出现的次数。
3.编写一个 Java 程序,要求用户输入要发送的消息,使用 PipedReader 和 PipedWriter 实现两个线程间的文本消息传递。
4.编写一个 Java 程序,要求用户输入文件路径和关键字,输出该文件中所有包含该关键字的行及其行号。
5.编写一个 Java 程序,要求用户输入要写入的文本内容,程序创建一个临时文件,将内容写入该文件,并在程序退出时自动删除该临时文件。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$
编写说明:2026版吉林省高职分类考试《信息工程类(电子与信息类)考纲百套卷》,依据吉林省高职分类(对口招生)考试各类专业综合卷考试科目及纲要(2021版),种信息工程类(电子与信息类)专业综合卷考试科目及纲要编写。本专辑共150份试卷两部分组成,第一部分是按考纲的考点要求编写的120份知识点训练卷,第二部分是针对6门课程的掌握要求,编写的30份常考题训练卷。
本试卷是吉林省高职分类考试《信息工程类(电子与信息类)考纲百套卷》的第37卷,是知识点训练卷。按“Java程序设计”考试纲要(七)Java的输入/输出的五点知识点要求编写,其五点要求是:
1.理解File类的File(String pathname)、File(String parent,String child)构造方法和getName()、getParent()、getPath()、renameTo(File dest)、createNewFile()、createTempFile(String prefix,String suffix)、delete()、exists()、isAbsolute()、isDirectory()、isFile()、list()、mkdir()等常用方法的功能和使用方法。
2.理解输入/输出流的概念。
3.了解流的分类(输入流与输出流,字节流与字符流,节点流与处理流)。
4.掌握常用字节流:FileInputStream、FileOutputStream、PipedInputStream、PipedOutputStream、BufferedInputStream、BufferedOutputStream的使用方法。
5.掌握常用字符流:FileReader、FileWriter、PipedReader、PipedWriter 、BufferedReader、BufferedWriter、InputStreamReader、OutputStreamWriter的使用方法。
2026版吉林省《信息工程类(电子与信息类)考纲百套卷》 第37卷
《Java程序设计》
(七)Java的输入/输出-知识点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、选择题(本大题共10小题,每小题2分,共20分)
1. 有如下代码:
File file = new File("C:/Users/test.txt");
String name = file.getName();
执行上述代码后,name的值是( )
A. C:/Users
B. test.txt
C. C:/Users/test.txt
D. 以上都不对
答案:B
2. 下列File类的构造方法中,能够根据父路径和子路径创建File对象的是( )
A. File(String pathname)
B. File(String parent, String child)
C. File(File parent, String child)
D. File(String child, String parent)
答案:B
3.下面关于File类的list()方法的描述,正确的是( )
A. list()方法只能用于文件对象,不能用于目录对象
B. list()方法返回的是一个File对象数组
C. 如果File对象表示的目录不存在,list()方法返回null
D. list()方法返回的数组中包含隐藏文件和子目录
答案:C
4.以下关于流的分类说法,正确的是( )
A. 字节流以字符为单位读写数据
B. 字符流适合处理二进制文件
C. 节点流直接操作数据源
D. 处理流不能包装其他流
答案:C
5.以下代码使用 FileOutputStream 写入文件,说法正确的是( )
try {
FileOutputStream fos = new FileOutputStream("test.txt");
fos.write(65);
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
A. 该代码会将字符 'A' 写入文件 test.txt 中
B. 该代码会将数字 65 以字符串形式写入文件 test.txt 中
C. 如果文件 test.txt 不存在,会抛出异常
D. 该代码没有使用 BufferedOutputStream 包装,性能一定很差
答案:A
6.要将字节流转换为字符流,可以使用( )
A. BufferedInputStream
B. BufferedOutputStream
C. OutputStreamWriter
D. InputStreamReader
答案:D
7.以下代码使用 FileWriter 写入文本文件,说法正确的是( )
try {
FileWriter fw = new FileWriter("test.txt");
fw.write("Hello");
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
A. 该代码会将字符串 "Hello" 以字节形式写入文件 test.txt 中
B. 如果文件 test.txt 已经存在,会抛出异常
C. 该代码使用 FileWriter 写入文本文件,不会有字符编码问题
D. 可以使用 BufferedWriter 包装 FileWriter 来提高写入性能
答案:D
8.以下属于处理流的是( )
A. FileInputStream
B. FileReader
C. BufferedInputStream
D. FileOutputStream
答案:C
9.以下关于字节流和字符流的使用场景,说法正确的是( )
A. 处理图片、音频等二进制文件时,应该使用字符流
B. 处理文本文件时,应该使用字节流
C. 处理网络通信时,只能使用字节流
D. 处理文本文件时,使用字符流更方便
答案:D
10.使用 BufferedReader 读取文件时,如果文件内容为空,readLine() 方法会( )
A. 抛出 IOException 异常
B. 返回 null
C. 返回一个空字符串
D. 程序进入死循环
答案:B
二、判断题(本大题共10小题,每小题2分,共20分)
1.使用 File(String pathname) 构造方法创建 File 对象时,pathname 必须是已经存在的文件或目录路径。( )
答案:错误
2.renameTo(File dest) 方法可以跨不同的文件系统对文件进行重命名操作。( )
答案:错误
3.File类可以表示文件和目录路径名。( )
答案:正确
4.Reader和Writer是字节流的抽象基类。( )
答案:错误
5. 输入流只能从文件中读取数据,输出流只能向文件中写入数据。( )
答案:错误
6. InputStreamReader可以将字节流转换为字符流。( )
答案:正确
7. BufferedInputStream 和 BufferedOutputStream 主要是为了提高数据读写的安全性。( )
答案:错误
8. PipedReader 和 PipedWriter 是字符流。( )
答案:正确
9. 使用完流后不需要手动关闭,Java垃圾回收器会自动关闭。( )
答案:错误
10. File类的isFile()方法可以判断该File对象是否表示一个文件。( )
答案:正确
三、填空题(本大题共5小题,每题2分,共10分)
1. 使用 File(String parent, String child) 构造方法创建 File 对象时,parent 表示 __________,child 表示 __________。
答案:父路径;子路径
2. File 类的 __________ 方法用于删除此抽象路径名表示的文件或目录。
答案:delete ()
3.创建表示"test.txt"文件的File对象的代码是File file = ______ File("test.txt");
答案:new
4. 使用 FileInputStream 读取文件时,如果文件不存在,会抛出 ____________ 异常。
答案:FileNotFoundException
5. FileReader 是从文件中读取 ____________ 数据的字符流。
答案:字符
四、读程序写结果题(本大题共5小题,每题5分,共25分)
1.以下程序的运行结果是 。
import java.io.File;
public class FileTest1 {
public static void main(String[] args) {
File file = new File("test.txt");
System.out.println("文件存在: " + file.exists());
System.out.println("是文件: " + file.isFile());
System.out.println("是目录: " + file.isDirectory());
}
}
答案:
文件存在: false
是文件: false
是目录: false
以下程序的运行结果是 。
import java.io.*;
public class FileIOTest2 {
public static void main(String[] args) {
try (FileInputStream fis = new FileInputStream("data.txt")) {
int data;
while ((data = fis.read()) != -1) {
System.out.print((char) data);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
答案: ABC
以下程序的运行结果是 。
import java.io.*;
public class BufferedTest {
public static void main(String[] args) {
try (BufferedWriter bw = new BufferedWriter(new FileWriter("buffered.txt"))) {
bw.write("第一行");
bw.newLine();
bw.write("第二行");
} catch (IOException e) {
e.printStackTrace();
}
}
}
答案: 创建buffered.txt文件,内容为两行:"第一行"和"第二行"
4.有test.txt且文档内容为“Hello JAVA”,以下程序的运行结果是______。
import java.io.FileReader;
import java.io.IOException;
public class StreamTest5 {
public static void main(String[] args) {
try {
FileReader fr = new FileReader("test.txt");
int data;
while ((data = fr.read()) != -1) {
System.out.print((char) data);
}
fr.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
答案:将 test.txt 文件中的内容逐字符输出到控制台。
5.以下程序的运行结果是______。
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
public class StreamTest8 {
public static void main(String[] args) {
try {
FileWriter fw = new FileWriter("output.txt");
BufferedWriter bw = new BufferedWriter(fw);
String[] lines = {"Line 1", "Line 2", "Line 3"};
for (String line : lines) {
bw.write(line);
bw.newLine();
}
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
答案:在当前目录下创建 output.txt 文件,并将 "Line 1"、"Line 2"、"Line 3" 逐行写入该文件。
五、编程题(本大题共5小题,每题5分,共25分)
1.编写一个 Java 程序,要求用户输入源文件路径、目标文件路径和目标文件编码,将源文件复制到目标文件并转换为指定编码。
答案:
import java.io.*;
import java.util.Scanner;
public class FileCopyWithEncoding {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入源文件路径: ");
String sourcePath = scanner.nextLine();
System.out.print("请输入目标文件路径: ");
String targetPath = scanner.nextLine();
System.out.print("请输入目标文件编码: ");
String encoding = scanner.nextLine();
try (InputStreamReader isr = new InputStreamReader(new FileInputStream(sourcePath));
OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream(targetPath), encoding)) {
int c;
while ((c = isr.read()) != -1) {
osw.write(c);
}
System.out.println("文件复制并转换编码成功。");
} catch (IOException e) {
System.out.println("文件操作出错: " + e.getMessage());
}
scanner.close();
}
}
2.编写一个 Java 程序,要求用户输入文件路径和一个字符,统计该文件中该字符出现的次数。
答案:
import java.io.FileReader;
import java.io.IOException;
import java.util.Scanner;
public class CharacterCountInFile {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入文件路径: ");
String filePath = scanner.nextLine();
System.out.print("请输入要统计的字符: ");
char targetChar = scanner.nextLine().charAt(0);
int count = 0;
try (FileReader fr = new FileReader(filePath)) {
int c;
while ((c = fr.read()) != -1) {
if ((char) c == targetChar) {
count++;
}
}
System.out.println("字符 '" + targetChar + "' 出现的次数为: " + count);
} catch (IOException e) {
System.out.println("文件操作出错: " + e.getMessage());
}
scanner.close();
}
}
3.编写一个 Java 程序,要求用户输入要发送的消息,使用 PipedReader 和 PipedWriter 实现两个线程间的文本消息传递。
答案:
import java.io.IOException;
import java.io.PipedReader;
import java.io.PipedWriter;
import java.util.Scanner;
public class PipedStreamCommunication {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入要发送的消息: ");
String message = scanner.nextLine();
PipedWriter writer = new PipedWriter();
PipedReader reader = null;
try {
reader = new PipedReader(writer);
} catch (IOException e) {
e.printStackTrace();
}
Thread sender = new Thread(() -> {
try {
writer.write(message);
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
});
Thread receiver = new Thread(() -> {
try {
int c;
StringBuilder receivedMessage = new StringBuilder();
while ((c = reader.read()) != -1) {
receivedMessage.append((char) c);
}
System.out.println("接收到的消息: " + receivedMessage.toString());
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
});
sender.start();
receiver.start();
scanner.close();
}
}
4.编写一个 Java 程序,要求用户输入文件路径和关键字,输出该文件中所有包含该关键字的行及其行号。
答案:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.Scanner;
public class SearchKeywordInFile {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入文件路径: ");
String filePath = scanner.nextLine();
System.out.print("请输入要查找的关键字: ");
String keyword = scanner.nextLine();
int lineNumber = 0;
try (BufferedReader br = new BufferedReader(new FileReader(filePath))) {
String line;
while ((line = br.readLine()) != null) {
lineNumber++;
if (line.contains(keyword)) {
System.out.println("第 " + lineNumber + " 行: " + line);
}
}
} catch (IOException e) {
System.out.println("文件操作出错: " + e.getMessage());
}
scanner.close();
}
}
5.编写一个 Java 程序,要求用户输入要写入的文本内容,程序创建一个临时文件,将内容写入该文件,并在程序退出时自动删除该临时文件。
答案:
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
public class CreateTemporaryFile {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入要写入的文本内容: ");
String content = scanner.nextLine();
try {
File tempFile = File.createTempFile("temp_", ".txt");
tempFile.deleteOnExit();
try (FileWriter fw = new FileWriter(tempFile)) {
fw.write(content);
}
System.out.println("临时文件已创建,路径为: " + tempFile.getAbsolutePath());
} catch (IOException e) {
System.out.println("创建临时文件出错: " + e.getMessage());
}
scanner.close();
}
}
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$