"Java Basic Introduction 2nd Edition": programadores de caballo oscuro después de las respuestas de clase y explicación detallada Capítulo 7 Flujo de E / S

1. Complete los espacios en blanco

1、	字节流、字符流
2、	Channel、Buffer
3、	InputStreamReader、OutputStreamWriter
4、	Buffer、Channel、Selector
5、RandomAccesseFile

2. Verdadero o falso

1、	错  2、对   3、对  4、对  5、错

Tres preguntas de opción múltiple

1、AB   2、C   3、AB    4、A  5、B 

Cuatro preguntas de respuesta corta

1. Los programas Java completan la entrada y salida a través de flujos de E / S, que son abstracciones de información de entrada o salida. La transmisión está conectada a periféricos para la comunicación de datos a través del sistema de entrada / salida de Java. La secuencia es un objeto abstracto y el código de implementación específico está en el paquete java.io.

2. Las dos clases básicas de flujo de bytes son InputStream y OutputStream. Las dos clases básicas de flujo de caracteres son Lector y Escritor. Todas son subclases directas de la clase Object. El flujo de bytes se procesa con bytes de 8 bits como unidad básica. La clase de flujo de bytes; las clases Lector y Escritor son clases de flujo de caracteres especiales que tratan con bytes de 16 bits.

3. El NIO en Java pareció reemplazar la E / S estándar tradicional. Comparado con IO estándar, Java NIO proporciona una forma diferente de trabajar desde I / O. NIO utiliza un método de archivo mapeado en memoria para procesar la entrada / salida. Mapea un archivo o una sección de un archivo en la memoria para que se pueda acceder al archivo como si fuera memoria.
En IO estándar, se utilizan flujos de bytes y flujos de caracteres, mientras que en NIO se utilizan canales y búferes. Los datos siempre se leen desde el canal al búfer o se escriben desde el búfer al canal.
NIO tiene principalmente tres partes principales: Buffer, Channel y Selector. Entre ellos, Buffer se puede considerar como un contenedor, que es esencialmente un búfer de matriz. Todos los objetos leídos o escritos en Channel se colocarán primero en Buffer; Channel es una simulación de entrada / salida tradicional, en NIO Todos los datos deben transmitirse en forma de flujo de canal; el selector se usa para monitorear eventos de múltiples canales (por ejemplo: conexión abierta, llegada de datos, etc.), principalmente usado para procesamiento multiproceso.

Cinco, preguntas de programación

1.import java.io.*;
public class Test01 {
    
    
	public static void main(String[] args) throws Exception {
    
    
		// 字节流拷贝
		FileInputStream in = new FileInputStream("E:/src.txt");
		FileOutputStream out = new FileOutputStream("E:/des1.txt");
		byte[] buf = new byte[1024];
		int len;
		while ((len = in.read(buf)) != -1) {
    
    
			out.write(buf, 0, len);
		}
		in.close();
		out.close();
		// 字符流拷贝
		BufferedReader bf = new BufferedReader(new FileReader("E:/src.txt"));
		BufferedWriter bw = new BufferedWriter(new FileWriter("E:/des2.txt"));
		String str;
		while ((str = bf.readLine()) != null) {
    
    
			bw.write(str);
			bw.newLine();
		}
		bf.close();
		bw.close();
	}
}
2.import java.io.*;
public class Test02 {
    
    
	public static void main(String[] args) throws Exception {
    
    
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String password = "";
		boolean b = false;
		for (int i = 0; i < 5; i++) {
    
    
			System.out.println("请输入密码:");
			password = br.readLine();
			if (password.equals("123456")) {
    
    
				System.out.println("恭喜你进入游戏");
				b = true;
				break;
			}
		}
		if (!b) {
    
    
			System.out.println("密码错误,游戏结束");
			System.exit(0);
		}
	}
}

Seis, la pregunta original y su análisis

Nada.

Supongo que te gusta

Origin blog.csdn.net/hypertext123/article/details/109314741
Recomendado
Clasificación