Écrire un octet dans un fichier en Java
-
Utilisation de
FileOutputStream
pour écrire un octet dans un fichier en Java -
Utilisation de
java.nio.file
pour écrire un octet dans un fichier -
Utilisation de la bibliothèque
Apache Commons IO
pour écrire un octet dans un fichier en Java
Ce programme montre comment écrire un tableau d’octets dans un fichier en Java. Cette tâche peut être effectuée en utilisant FileOutputStream
et en utilisant certaines bibliothèques mentionnées dans cet article.
Utilisation de FileOutputStream
pour écrire un octet dans un fichier en Java
La classe FileOutputStream
en Java est un Stream de sortie utilisé pour écrire des données ou un Stream d’octets dans un fichier. Le constructeur FileOutputStream(File file)
crée un Stream de sortie de fichier à écrire dans le fichier représenté par l’objet File
, que nous avons créé dans le code ci-dessous.
La variable s
de type String
est passée à la méthode getBytes()
, qui convertit la chaîne en une séquence d’octets et retourne un tableau d’octets. La méthode write()
prend le tableau d’octets comme argument et écrit b.length octets du tableau d’octets b
dans ce Stream de sortie de fichier.
Un fichier avec l’extension .txt
est créé au chemin donné, et si nous l’ouvrons, nous pouvons voir le même contenu que la chaîne stockée dans la variable s
.
import java.io.File;
import java.io.FileOutputStream;
public class ByteToFile {
public static void main(String args[]) {
File file = new File("/Users/john/Desktop/demo.txt");
try {
FileOutputStream fout = new FileOutputStream(file);
String s = "Example of Java program to write Bytes using ByteStream.";
byte b[] = s.getBytes();
fout.write(b);
} catch (Exception e) {
e.printStackTrace();
}
}
}
Utilisation de java.nio.file
pour écrire un octet dans un fichier
Le package Java NIO ( New I/O)
se compose de méthodes statiques qui fonctionnent sur les fichiers, les répertoires et il fonctionne principalement sur l’objet Path
. Le Path.get()
est une méthode statique qui convertit une séquence de chaînes ou une chaîne de chemin en un chemin. Il appelle simplement FileSystems.getDefault().getPath()
.
Ainsi, nous pouvons écrire un tableau d’octets b
dans un fichier en utilisant la méthode Files.write()
en passant le chemin vers le fichier, et le tableau d’octets converti à partir d’une chaîne.
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class ByteToFile {
public static void main(String args[]) {
Path p = Paths.get("/Users/john/Desktop/demo.txt");
try {
String s = "Write byte array to file using java.nio";
byte b[] = s.getBytes();
Files.write(p, b);
} catch (IOException ex) {
System.err.format("I/O Error when copying file");
}
}
}
Utilisation de la bibliothèque Apache Commons IO
pour écrire un octet dans un fichier en Java
La dépendance maven pour cette bibliothèque est comme mentionné ci-dessous.
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>
La bibliothèque Apache Commons IO
a la classe FilesUtils, elle a la méthode writeByteArrayToFile()
. Cette méthode prend le chemin de destination et les données binaires que nous écrivons. Si notre répertoire ou fichier de destination n’existe pas, ils seront créés. Si le fichier existe, il sera tronqué avant l’écriture.
import java.io.File;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import org.apache.commons.io.FileUtils;
public class ByteToFile {
public static void main(String args[]) {
{
File file = new File("doc.txt");
byte[] data =
"Here, we describe the general principles of photosynthesis"
.getBytes(StandardCharsets.UTF_8);
try {
FileUtils.writeByteArrayToFile(file, data);
System.out.println("Successfully written data to the file");
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
Production:
Successfully written data to the file
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedInArticle connexe - Java Byte
- Comment convertir une chaîne Java en octet
- Convertir un entier en octet en Java
- Convertir Octet en Int en Java