内容正文:
编写说明:2026版吉林省高职分类考试《信息工程类(电子与信息类)考纲百套卷》,依据吉林省高职分类(对口招生)考试各类专业综合卷考试科目及纲要(2021版),种信息工程类(电子与信息类)专业综合卷考试科目及纲要编写。本专辑共150份试卷两部分组成,第一部分是按考纲的考点要求编写的120份知识点训练卷,第二部分是针对6门课程的掌握要求,编写的30份常考题训练卷。
本试卷是吉林省高职分类考试《信息工程类(电子与信息类)考纲百套卷》的第39卷,是知识点训练卷。按“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版吉林省《信息工程类(电子与信息类)考纲百套卷》 第39卷
《Java程序设计》
(七)Java的输入/输出-知识点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、选择题(本大题共10小题,每小题2分,共20分)
1. 以下代码使用File(String parent, String child)构造方法创建File对象,以下正确的是( )
A. File fileA = new File("C:/Users", "test.txt");
B. File fileB = new File("C:/Users/test.txt", "");
C. File fileC = new File("", "C:/Users/test.txt");
D. File fileD = new File("C:/Users/test.txt", "new.txt");
2. 可以判断File对象表示的文件或目录是否存在的是( )
A. isFile()
B. isDirectory()
C. exists()
D. isAbsolute()
3. 使用BufferedReader的( )可以读取一行文本。
A. read()
B. readLine()
C. readChar()
D. readString()
4.以下可以创建新文件的方法是( )
A. createNewFile()
B. newFile()
C. createFile()
D. makeFile()
5.PipedInputStream 和 PipedOutputStream 主要用于( )
A. 从文件中读取数据和向文件中写入数据
B. 在不同线程之间进行管道通信
C. 对数据进行加密和解密
D. 处理网络数据传输
6.要从键盘读取输入,可以使用( )
A. FileInputStream
B. FileReader
C. System.out
D. System.in
7.PipedReader 和 PipedWriter 的作用与 PipedInputStream 和 PipedOutputStream 类似,它们的主要区别在于( )
A. PipedReader 和 PipedWriter 用于处理文本数据,PipedInputStream 和 PipedOutputStream 用于处理二进制数据
B. PipedReader 和 PipedWriter 的性能比 PipedInputStream 和 PipedOutputStream 高
C. PipedReader 和 PipedWriter 只能在同一个线程中使用,PipedInputStream 和 PipedOutputStream 可以在不同线程中使用
D. PipedReader 和 PipedWriter 是节点流,PipedInputStream 和 PipedOutputStream 是处理流
8.以下可以删除File对象表示的文件或目录的方法是( )
A. remove()
B. delete()
C. erase()
D. destroy()
9.以下代码使用 FileInputStream 和 FileOutputStream 复制文件,存在的问题是( )
try {
FileInputStream fis = new FileInputStream("source.txt");
FileOutputStream fos = new FileOutputStream("destination.txt");
int data;
while ((data = fis.read()) != -1) {
fos.write(data);
}
} catch (IOException e) {
e.printStackTrace();
}
A. 没有关闭输入流和输出流,会导致资源泄漏
B. 复制文件的效率很高,没有问题
C. 不能处理大文件
D. 以上说法都不正确
10.以下关于 InputStreamReader 和 OutputStreamWriter 的说法,错误的是( )
A. 可以在创建 InputStreamReader 和 OutputStreamWriter 时指定字符编码
B. InputStreamReader 可以将字节流转换为字符流,OutputStreamWriter 可以将字符流转换为字节流
C. InputStreamReader 和 OutputStreamWriter 只能处理文本数据
D. InputStreamReader 和 OutputStreamWriter 是节点流
二、判断题(本大题共10小题,每小题2分,共20分)
1. File类的renameTo()方法只能重命名文件,不能移动文件。( )
2.createTempFile(String prefix, String suffix) 方法创建的临时文件不会自动删除。( )
3.BufferedInputStream是处理流,需要包装其他流。( )
4.mkdir() 方法只能创建单级目录。( )
5. 节点流可以独立存在,而处理流必须依赖于节点流。( )
6. File类的mkdir()方法可以创建多级目录。( )
7. FileWriter是字符输出流,用于向文件写入字符数据。( )
8. System.out是标准错误输出流。( )
9. OutputStreamWriter 在写入数据时,如果缓冲区未满,数据不会被写入目的地。( )
10. 在关闭流时,应该先关闭处理流,再关闭节点流。( )
三、填空题(本大题共5小题,每题2分,共10分)
1. 要创建一个新文件,可以使用 File 类的 __________ 方法。
2. File 类的 __________ 方法用于创建单级目录。
3. 创建文件输入流读取"data.txt"文件的代码是FileInputStream fis = ______ FileInputStream("data.txt");
4. PipedInputStream 和 PipedOutputStream 主要用于在 ____________ 之间进行数据传输。
5. InputStreamReader 可以将 ____________ 转换为 ____________。
四、读程序写结果题(本大题共5小题,每题5分,共25分)
1.以下程序的运行结果是 。
import java.io.File;
public class FileTest2 {
public static void main(String[] args) {
File file = new File("test.txt");
System.out.println("文件名: " + file.getName());
System.out.println("父路径: " + file.getParent());
System.out.println("绝对路径: " + file.getAbsolutePath());
}
}
2.以下程序的运行结果是 。
import java.io.*;
public class CharIOTest1 {
public static void main(String[] args) {
try (FileWriter fw = new FileWriter("text.txt")) {
fw.write("你好世界");
} catch (IOException e) {
e.printStackTrace();
}
}
}
3.以下程序的运行结果是 。
import java.io.*;
public class BufferedReaderTest {
public static void main(String[] args) {
try (BufferedReader br = new BufferedReader(new FileReader("buffered.txt"))) {
String line;
int count = 1;
while ((line = br.readLine()) != null) {
System.out.println("第" + count + "行: " + line);
count++;
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
4.有test.txt且文档内容为“Hello JAVA”,以下程序的运行结果是______。
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class StreamTest7 {
public static void main(String[] args) {
try {
FileReader fr = new FileReader("test.txt");
BufferedReader br = new BufferedReader(fr);
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
5.以下程序的运行结果是______。
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.IOException;
public class StreamTest10 {
public static void main(String[] args) {
try {
FileOutputStream fos = new FileOutputStream("output.txt");
OutputStreamWriter osw = new OutputStreamWriter(fos);
String content = "Hello, Encoded!";
osw.write(content);
osw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
五、编程题(本大题共5小题,每题5分,共25分)
1.编写一个 Java 程序,要求用户输入一个目录路径,将该目录下所有 .txt 文件的文件名前加上 new_ 前缀。
2.编写一个 Java 程序,要求用户输入多级目录路径和文件名,创建该多级目录并在其中创建指定文件名的文件。
3.编写一个 Java 程序,要求用户输入源文件路径和目标文件路径,将源文件的内容按行逆序写入目标文件。
4.编写一个 Java 程序,要求用户输入目录路径,统计该目录下所有文件的大小总和(单位:字节)。
5.编写一个 Java 程序,要求用户输入源文件路径和目标文件路径,使用缓冲流实现大文件的高效复制。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$
编写说明:2026版吉林省高职分类考试《信息工程类(电子与信息类)考纲百套卷》,依据吉林省高职分类(对口招生)考试各类专业综合卷考试科目及纲要(2021版),种信息工程类(电子与信息类)专业综合卷考试科目及纲要编写。本专辑共150份试卷两部分组成,第一部分是按考纲的考点要求编写的120份知识点训练卷,第二部分是针对6门课程的掌握要求,编写的30份常考题训练卷。
本试卷是吉林省高职分类考试《信息工程类(电子与信息类)考纲百套卷》的第39卷,是知识点训练卷。按“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版吉林省《信息工程类(电子与信息类)考纲百套卷》 第39卷
《Java程序设计》
(七)Java的输入/输出-知识点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、选择题(本大题共10小题,每小题2分,共20分)
1. 以下代码使用File(String parent, String child)构造方法创建File对象,以下正确的是( )
A. File fileA = new File("C:/Users", "test.txt");
B. File fileB = new File("C:/Users/test.txt", "");
C. File fileC = new File("", "C:/Users/test.txt");
D. File fileD = new File("C:/Users/test.txt", "new.txt");
答案:A
2. 可以判断File对象表示的文件或目录是否存在的是( )
A. isFile()
B. isDirectory()
C. exists()
D. isAbsolute()
答案:C
3. 使用BufferedReader的( )可以读取一行文本。
A. read()
B. readLine()
C. readChar()
D. readString()
答案:B
4.以下可以创建新文件的方法是( )
A. createNewFile()
B. newFile()
C. createFile()
D. makeFile()
答案:A
5.PipedInputStream 和 PipedOutputStream 主要用于( )
A. 从文件中读取数据和向文件中写入数据
B. 在不同线程之间进行管道通信
C. 对数据进行加密和解密
D. 处理网络数据传输
答案:B
6.要从键盘读取输入,可以使用( )
A. FileInputStream
B. FileReader
C. System.out
D. System.in
答案:D
7.PipedReader 和 PipedWriter 的作用与 PipedInputStream 和 PipedOutputStream 类似,它们的主要区别在于( )
A. PipedReader 和 PipedWriter 用于处理文本数据,PipedInputStream 和 PipedOutputStream 用于处理二进制数据
B. PipedReader 和 PipedWriter 的性能比 PipedInputStream 和 PipedOutputStream 高
C. PipedReader 和 PipedWriter 只能在同一个线程中使用,PipedInputStream 和 PipedOutputStream 可以在不同线程中使用
D. PipedReader 和 PipedWriter 是节点流,PipedInputStream 和 PipedOutputStream 是处理流
答案:A
8.以下可以删除File对象表示的文件或目录的方法是( )
A. remove()
B. delete()
C. erase()
D. destroy()
答案:B
9.以下代码使用 FileInputStream 和 FileOutputStream 复制文件,存在的问题是( )
try {
FileInputStream fis = new FileInputStream("source.txt");
FileOutputStream fos = new FileOutputStream("destination.txt");
int data;
while ((data = fis.read()) != -1) {
fos.write(data);
}
} catch (IOException e) {
e.printStackTrace();
}
A. 没有关闭输入流和输出流,会导致资源泄漏
B. 复制文件的效率很高,没有问题
C. 不能处理大文件
D. 以上说法都不正确
答案:A
10.以下关于 InputStreamReader 和 OutputStreamWriter 的说法,错误的是( )
A. 可以在创建 InputStreamReader 和 OutputStreamWriter 时指定字符编码
B. InputStreamReader 可以将字节流转换为字符流,OutputStreamWriter 可以将字符流转换为字节流
C. InputStreamReader 和 OutputStreamWriter 只能处理文本数据
D. InputStreamReader 和 OutputStreamWriter 是节点流
答案:D
二、判断题(本大题共10小题,每小题2分,共20分)
1. File类的renameTo()方法只能重命名文件,不能移动文件。( )
答案:错误
2.createTempFile(String prefix, String suffix) 方法创建的临时文件不会自动删除。( )
答案:错误
3.BufferedInputStream是处理流,需要包装其他流。( )
答案:正确
4.mkdir() 方法只能创建单级目录。( )
答案:正确
5. 节点流可以独立存在,而处理流必须依赖于节点流。( )
答案:正确
6. File类的mkdir()方法可以创建多级目录。( )
答案:错误
7. FileWriter是字符输出流,用于向文件写入字符数据。( )
答案:正确
8. System.out是标准错误输出流。( )
答案:错误
9. OutputStreamWriter 在写入数据时,如果缓冲区未满,数据不会被写入目的地。( )
答案:正确
10. 在关闭流时,应该先关闭处理流,再关闭节点流。( )
答案:正确
三、填空题(本大题共5小题,每题2分,共10分)
1. 要创建一个新文件,可以使用 File 类的 __________ 方法。
答案:createNewFile()
2. File 类的 __________ 方法用于创建单级目录。
答案:mkdir()
3. 创建文件输入流读取"data.txt"文件的代码是FileInputStream fis = ______ FileInputStream("data.txt");
答案:new
4. PipedInputStream 和 PipedOutputStream 主要用于在 ____________ 之间进行数据传输。
答案:线程
5. InputStreamReader 可以将 ____________ 转换为 ____________。
答案:字节流;字符流
四、读程序写结果题(本大题共5小题,每题5分,共25分)
1.以下程序的运行结果是 。
import java.io.File;
public class FileTest2 {
public static void main(String[] args) {
File file = new File("test.txt");
System.out.println("文件名: " + file.getName());
System.out.println("父路径: " + file.getParent());
System.out.println("绝对路径: " + file.getAbsolutePath());
}
}
答案:
文件名: test.txt
父路径: null (如果文件在当前目录)
绝对路径: [当前目录的绝对路径]/test.txt
2.以下程序的运行结果是 。
import java.io.*;
public class CharIOTest1 {
public static void main(String[] args) {
try (FileWriter fw = new FileWriter("text.txt")) {
fw.write("你好世界");
} catch (IOException e) {
e.printStackTrace();
}
}
}
答案: 创建text.txt文件,内容为"你好世界"
3.以下程序的运行结果是 。
import java.io.*;
public class BufferedReaderTest {
public static void main(String[] args) {
try (BufferedReader br = new BufferedReader(new FileReader("buffered.txt"))) {
String line;
int count = 1;
while ((line = br.readLine()) != null) {
System.out.println("第" + count + "行: " + line);
count++;
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
答案:
第1行: 第一行
第2行: 第二行
4.有test.txt且文档内容为“Hello JAVA”,以下程序的运行结果是______。
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class StreamTest7 {
public static void main(String[] args) {
try {
FileReader fr = new FileReader("test.txt");
BufferedReader br = new BufferedReader(fr);
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
答案:Hello JAVA
5.以下程序的运行结果是______。
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.IOException;
public class StreamTest10 {
public static void main(String[] args) {
try {
FileOutputStream fos = new FileOutputStream("output.txt");
OutputStreamWriter osw = new OutputStreamWriter(fos);
String content = "Hello, Encoded!";
osw.write(content);
osw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
答案:在当前目录下创建 output.txt 文件,并将字符串 "Hello, Encoded!" 写入该文件。
五、编程题(本大题共5小题,每题5分,共25分)
1.编写一个 Java 程序,要求用户输入一个目录路径,将该目录下所有 .txt 文件的文件名前加上 new_ 前缀。
答案:
import java.io.File;
import java.util.Scanner;
public class BatchFileRename {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入目录路径: ");
String directoryPath = scanner.nextLine();
File directory = new File(directoryPath);
if (directory.exists() && directory.isDirectory()) {
File[] files = directory.listFiles();
if (files != null) {
for (File file : files) {
if (file.isFile() && file.getName().endsWith(".txt")) {
String newName = "new_" + file.getName();
File newFile = new File(file.getParent(), newName);
if (file.renameTo(newFile)) {
System.out.println(file.getName() + " 重命名为 " + newName + " 成功");
} else {
System.out.println(file.getName() + " 重命名失败");
}
}
}
}
} else {
System.out.println("输入的路径不是一个有效的目录。");
}
scanner.close();
}
}
2.编写一个 Java 程序,要求用户输入多级目录路径和文件名,创建该多级目录并在其中创建指定文件名的文件。
答案:
import java.io.File;
import java.io.IOException;
import java.util.Scanner;
public class CreateDirAndFile {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入多级目录路径: ");
String dirPath = scanner.nextLine();
System.out.print("请输入文件名: ");
String fileName = scanner.nextLine();
File directory = new File(dirPath);
if (directory.mkdirs()) {
File file = new File(directory, fileName);
try {
if (file.createNewFile()) {
System.out.println("目录和文件创建成功。");
} else {
System.out.println("文件创建失败。");
}
} catch (IOException e) {
System.out.println("文件操作出错: " + e.getMessage());
}
} else {
System.out.println("目录创建失败。");
}
scanner.close();
}
}
3.编写一个 Java 程序,要求用户输入源文件路径和目标文件路径,将源文件的内容按行逆序写入目标文件。
答案:
import java.io.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;
public class ReverseLinesInFile {
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();
List<String> lines = new ArrayList<>();
try (BufferedReader br = new BufferedReader(new FileReader(sourcePath))) {
String line;
while ((line = br.readLine()) != null) {
lines.add(line);
}
} catch (IOException e) {
System.out.println("读取源文件出错: " + e.getMessage());
}
Collections.reverse(lines);
try (BufferedWriter bw = new BufferedWriter(new FileWriter(targetPath))) {
for (String line : lines) {
bw.write(line);
bw.newLine();
}
System.out.println("文件内容按行逆序写入成功。");
} catch (IOException e) {
System.out.println("写入目标文件出错: " + e.getMessage());
}
scanner.close();
}
}
4.编写一个 Java 程序,要求用户输入目录路径,统计该目录下所有文件的大小总和(单位:字节)。
答案:
import java.io.File;
import java.util.Scanner;
public class DirectorySizeCalculator {
public static long calculateDirectorySize(File directory) {
long totalSize = 0;
if (directory.isDirectory()) {
File[] files = directory.listFiles();
if (files != null) {
for (File file : files) {
if (file.isDirectory()) {
totalSize += calculateDirectorySize(file);
} else {
totalSize += file.length();
}
}
}
}
return totalSize;
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入目录路径: ");
String directoryPath = scanner.nextLine();
File directory = new File(directoryPath);
if (directory.exists() && directory.isDirectory()) {
long size = calculateDirectorySize(directory);
System.out.println("目录下所有文件的大小总和为: " + size + " 字节");
} else {
System.out.println("输入的路径不是一个有效的目录。");
}
scanner.close();
}
}
5.编写一个 Java 程序,要求用户输入源文件路径和目标文件路径,使用缓冲流实现大文件的高效复制。
答案:
import java.io.*;
import java.util.Scanner;
public class EfficientFileCopy {
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();
try (BufferedInputStream bis = new BufferedInputStream(new FileInputStream(sourcePath));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(targetPath))) {
byte[] buffer = new byte[8192];
int bytesRead;
while ((bytesRead = bis.read(buffer)) != -1) {
bos.write(buffer, 0, bytesRead);
}
System.out.println("文件复制完成。");
} catch (IOException e) {
System.out.println("文件操作出错: " + e.getMessage());
}
scanner.close();
}
}
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$