📜  使用 ByteStream 写入字节的Java程序

📅  最后修改于: 2022-05-13 01:55:03.192000             🧑  作者: Mango

使用 ByteStream 写入字节的Java程序

Java字节流用于执行 8 位字节的输入和输出。使用 BytesStream 将 Bytes 写入文件Java提供了一种用于在文件系统中写入文件的专用流,称为 FileOutputStream。此流提供用于写入文件内容的基本 OutputStream 功能。

FileOutputStream 类是用于将数据写入文件的输出流。它是一个属于字节流的类。FileOutputStream 类扩展了OutputStream 抽象类。因此它继承了所有用于写入文件的标准OutputStream 功能。FileOutputStream 仅提供了写入数据的低级接口。您可以从 String 路径名或 File 对象创建 FileOutputStream。FileOutputStream 构造函数不会抛出 FileNotFoundException。如果指定的文件不存在,则 FileOutputStream 将创建该文件。如果发生其他一些 I/O 错误,FileOutputStream 构造函数可以抛出 IOException。如果指定的文件确实存在,则 FileOutputStream 将打开它进行写入。当您实际调用 write() 方法时,新数据会覆盖文件的当前内容。要将数据附加到现有文件,请使用接受附加标志的不同构造函数。

现在,讨论这些内置方法以了解在处理Java中的文件概念时的内部工作。

  1. getBytes()方法
  2. write()方法
  3. close()方法

单独考虑它们,讨论方法以获得更好的理解。

1. getBytes()方法

为了写入文件,三个需要在将文本(内容)写入文件之前将其转换为字节数组。此方法通过将此 String 对象中的字符转换为字节值数组来发挥作用。字符中的字符串使用系统的默认字符编码方案转换为字节。

句法:

public byte[] getBytes() ; 

参数: NA

返回:包含此 String字符的字节数组

2. write()方法

FileOutputStream 类的 write(byte[] b) 方法用于将指定字节数组中的 b.length 个字节写入该文件输出流

句法:

public void write(byte[] b) throws IOException ; 

参数:数据

返回:此方法不返回任何值。

3. close()方法

FileOutputStream 类的 close() 方法用于关闭文件输出流并释放与此流关联的所有系统资源。

句法:

public void close() ; 

参数: NA

返回:此方法不返回任何值。

执行:

  • 创建文件的对象并将文件的本地目录路径作为输入传递。
  • 将随机文本存储为 String 数据类型。
  • 将字符串转换为字节数组。
  • 将字节数据写入文件输出。
  • 使用close()方法关闭文件。

例子

Java
// Java program to write Bytes using ByteStream
 
// Importing classes
import java.io.FileOutputStream;
import java.io.IOException;
 
// Class
class GFG {
 
    // Main driver method
    public static void main(String args[])
    {
 
        // Try block to check if any exception/s occur
        try {
 
            // Step 1: Creating object of the file and
            // passing local directory path of file as input
            FileOutputStream fout
                = new FileOutputStream("demo.txt");
 
            // Custom text to be written down in above file
            // Step 2: Storing text into String datatype
            String s
                = "Welcome to GFG! This is an example of Java program to write Bytes using ByteStream.";
 
            // Step 3: Converting string into byte array
            byte b[] = s.getBytes();
 
            // Step 4: Write byte data to file output
            fout.write(b);
 
            // Step 5: Close the file using close() method
            fout.close();
        }
 
        // Catch block to handle exceptions
        catch (IOException e) {
 
            // Display and print the exception
            System.out.println(e);
        }
    }
}


输出:

单击此文件后,所需结果如下,与上述程序中存储在字符串数据类型中的文本相同