Maison > Java > Javacommencer > le corps du texte

Quelle est la différence entre le flux d'octets et le flux de caractères en Java

王林
Libérer: 2020-11-25 15:46:47
avant
2599 Les gens l'ont consulté

Quelle est la différence entre le flux d'octets et le flux de caractères en Java

L'analyse des différences est la suivante :

(Partage de vidéos d'apprentissage : vidéo d'enseignement Java)

L'octet est l'unité de données de base pour les opérations io Lorsque le programme génère des données d'octet, vous pouvez utiliser la classe OutputStream pour compléter

Une telle opération. définition Comme suit :

public abstract class OutputStream
extends Object
implements Cloneable Flushable{}
Copier après la connexion

implémente deux interfaces parents Closeable Flushable dans la classe OutputStream

Les définitions de ces deux interfaces sont les suivantes

public interface Cloneable
extends AutoCloseable{
	public void close() throws IOException;
}
Copier après la connexion
public interface Flushable{
	public void flush() throws IOException;
}
Copier après la connexion

OutputStream définit une opération de sortie d'octet public , puisqu'elle est définie comme une classe abstraite, vous devez vous appuyer sur des sous-classes pour l'instanciation d'objet. Si vous devez afficher le contenu du fichier via un programme, vous pouvez utiliser la sous-classe FileOutputStream

La fonction de lecture et d'écriture de. le flux de caractères

	/**
	 * 字符流写功能
	 * @throws IOException 
	 */
	public static void demo4() throws IOException {
	Writer writer = new FileWriter("J:/demo2.txt",true);
	writer.write(123);
	writer.write("一二三");
	writer.write(879);
	writer.flush();
	writer.close();
	}
	
	/**
	 * 字符流读功能
	 * @throws IOException 
	 */
	
	public static void demo5() throws IOException {
		Reader reader = new FileReader("J:/demo2.txt");
		System.out.println((char)reader.read());
		System.out.println((char)reader.read());
		
		int a = 0;
		while((a=reader.read()) != -1) {
			System.out.println((char)reader.read());
		}
		
		reader.close();
	}	
Copier après la connexion

Créer un fichier et écrire le contenu

/**
	 * 创建文件并写入内容
	 * 
	 * @throws IOException
	 */
	public static void demo1() throws IOException {
		File file = new File("J:/demo.txt"); // 创建这个文件
		OutputStream os = new FileOutputStream(file, true); // 创建流对象 最后加个true参数代表是续写不是重写,不写true的话下一次运行这个方法就是清空内容并且重写
		os.write(10);// 添加内容
		os.write(302);// 添加内容
		os.write(11);// 添加内容
		os.write("hello world".getBytes()); // 上面是添加数字类型, 这一行代表添加字符
		os.close(); // 关闭流
	}
Copier après la connexion

La plus grande différence entre les deux types de flux d'opérations est que le flux de caractères utilise un tampon (cela est plus adapté aux données chinoises opérations), tandis que le flux d’octets utilise des opérations de traitement de données.

Recommandations associées : Tutoriel d'introduction à Java

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:csdn.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal