写进字节的输入流用write吗
时间: 2023-12-13 17:05:50 浏览: 19
不是的,写进字节的输入流应该使用`write()`方法。`write()`方法是OutputStream类的一个方法,用于将字节数据写入输出流。如果你想将数据写入到字节流中,应该使用`OutputStream`的派生类,例如`FileOutputStream`、`ByteArrayOutputStream`等。例如,下面是将数据写入到文件中的示例代码:
```java
try {
FileOutputStream fos = new FileOutputStream("example.txt");
byte[] data = "Hello, World!".getBytes();
fos.write(data);
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
```
在这个例子中,我们创建一个`FileOutputStream`对象,并将要写入的数据转换为字节数组。然后,我们使用`write()`方法将数据写入到输出流中,并关闭输出流。这样就完成了将数据写入到文件中的操作。
相关问题
用Java写实现基于字节流进行输入/输出
在Java中,您可以使用字节流进行输入和输出操作。以下是一个示例代码,展示了如何使用字节流进行文件的读取和写入:
```java
import java.io.*;
public class ByteStreamExample {
public static void main(String[] args) {
String filename = "example.txt";
// 写入文件
try (OutputStream outputStream = new FileOutputStream(filename)) {
String data = "Hello, World!";
byte[] bytes = data.getBytes();
outputStream.write(bytes);
System.out.println("数据已写入文件 " + filename);
} catch (IOException e) {
System.out.println("写入文件时发生错误: " + e.getMessage());
}
// 读取文件
try (InputStream inputStream = new FileInputStream(filename)) {
byte[] buffer = new byte[1024];
int bytesRead = inputStream.read(buffer);
String data = new String(buffer, 0, bytesRead);
System.out.println("从文件 " + filename + " 中读取到的数据: " + data);
} catch (IOException e) {
System.out.println("读取文件时发生错误: " + e.getMessage());
}
}
}
```
在这个示例中,我们首先创建一个名为 `example.txt` 的文件,并将字符串 "Hello, World!" 写入该文件。然后,我们使用字节流从文件中读取数据,并将读取到的字节转换成字符串进行输出。
请注意,在编写这段代码时我们使用了 Java 7 引入的 try-with-resources 语句。这样可以确保在代码块结束时自动关闭流对象,无需手动关闭或使用 finally 块。
该示例仅展示了字节流的基本用法,您可以根据自己的需求进行修改和扩展。希望对您有所帮助!
java字节输入和输出流
java字节输入流和输出流是用于读写字节信息的。java.io.OutputStream是字节输出流的抽象类,它是表示所有字节输出流类的父类,用于将指定的字节信息写出到目的地。常用的子类包括FileOutputStream,用于将字节写入到文件中。java.io.InputStream是字节输入流的抽象类,它是表示所有字节输入流类的父类,用于将字节信息读取到内存中。常用的子类包括FileInputStream,用于从文件中读取字节。
对于字节输出流,常用的写入方法有:
1. write(byte[] b):将b.length个字节从指定的byte数组中写入到此输出流中。
2. write(byte[] b, int off, int len):将指定的byte数组从偏移量off开始到len个字节写入到此输出流中。
3. write(int b):将指定字节写入到此输出流中。
以下是一个示例代码,演示了如何使用字节输出流将字符串写入到文件中:
```java
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class Example {
public static void main(String[] args) {
File file = new File("D:/path/to/file.txt");
FileOutputStream fo = null;
try {
fo = new FileOutputStream(file);
String str = "Hello, Java!";
byte[] bytes = str.getBytes();
fo.write(bytes);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (fo != null) {
try {
fo.close(); } catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
```