提交 16d61cfe 编写于 作者: W wizardforcel

2020-07-01 18:08:52

上级 110c9984
# Java OutputStream
# Java `OutputStream`
> 原文: [https://www.programiz.com/java-programming/outputstream](https://www.programiz.com/java-programming/outputstream)
#### 在本教程中,我们将通过一个示例学习 Java OutputStream 及其方法。
#### 在本教程中,我们将通过一个示例学习 Java `OutputStream`及其方法。
`java.io`包的`OutputStream`类是一个抽象超类,代表字节的输出流。
......@@ -10,7 +10,7 @@
* * *
## OutputStream 的子类
## `OutputStream`的子类
为了使用`OutputStream`的功能,我们可以使用其子类。 他们之中有一些是:
......@@ -24,7 +24,7 @@
* * *
## 创建一个 OutputStream
## 创建一个`OutputStream`
为了创建一个`OutputStream`,我们必须首先导入`java.io.OutputStream`包。 导入包后,就可以创建输出流。
......@@ -39,7 +39,7 @@ OutputStream object = new FileOutputStream();
* * *
## OutputStream 的方法
## `OutputStream`的方法
`OutputStream`类提供了由其子类实现的不同方法。 以下是一些方法:
......@@ -50,7 +50,7 @@ OutputStream object = new FileOutputStream();
* * *
## 示例:使用 FileOutputStream 的 OutputStream
## 示例:使用`FileOutputStream`的`OutputStream`
这是我们可以使用`FileOutputStream`类实现`OutputStream`的方法。
......@@ -103,4 +103,4 @@ output.close(); // To close the output stream
This is a line of text inside the file.
```
要了解更多信息,请访问 [Java OutputStream(官方 Java 文档)](https://docs.oracle.com/javase/7/docs/api/java/io/OutputStream.html "Java OutputStream (official Java documentation)")
\ No newline at end of file
要了解更多信息,请访问 [Java `OutputStream`(官方 Java 文档)](https://docs.oracle.com/javase/7/docs/api/java/io/OutputStream.html "Java OutputStream (official Java documentation)")
\ No newline at end of file
# Java FileInputStream
# Java `FileInputStream`
> 原文: [https://www.programiz.com/java-programming/fileinputstream](https://www.programiz.com/java-programming/fileinputstream)
#### 在本教程中,我们将借助示例学习 Java FileInputStream 及其方法。
#### 在本教程中,我们将借助示例学习 Java `FileInputStream`及其方法。
`java.io`包的`FileInputStream`类可用于从文件中读取数据(以字节为单位)。
......@@ -14,7 +14,7 @@
* * *
## 创建一个 FileInputStream
## 创建一个`FileInputStream`
为了创建文件输入流,我们必须首先导入`java.io.FileInputStream`包。 导入包后,就可以使用 Java 创建文件输入流。
......@@ -36,11 +36,11 @@ FileInputStream input = new FileInputStream(File fileObject);
* * *
## FileInputStream 的方法
## `FileInputStream`的方法
`FileInputStream`类提供了`InputStream`类中存在的不同方法的实现。
### read()方法
### `read()`方法
* `read()`-从文件中读取一个字节
* `read(byte[] array)`-从文件中读取字节并将其存储在指定的数组中
......@@ -98,11 +98,11 @@ This is a line of text inside the file.
FileInputStream input = new FileInputStream("input.txt");
```
为了从文件中读取数据,我们在 while 循环中使用了`read()`方法。
为了从文件中读取数据,我们在`while`循环中使用了`read()`方法。
* * *
### available()方法
### `available()`方法
要获得可用字节数,我们可以使用`available()`方法。 例如,
......@@ -154,7 +154,7 @@ Available bytes at the end: 36
* * *
### skip()方法
### `skip()`方法
要丢弃并跳过指定的字节数,可以使用`skip()`方法。 例如,
......@@ -200,11 +200,11 @@ Input Stream after skipping 5 bytes:
is a line of text inside the file.
```
在上面的示例中,我们使用`skip()`方法从文件输入流中跳过 5 个字节的数据。 因此,不会从输入流中读取代表文本**“ This”** 的字节。
在上面的示例中,我们使用`skip()`方法从文件输入流中跳过 5 个字节的数据。 因此,不会从输入流中读取代表文本`This`的字节。
* * *
### close()方法
### `close()`方法
要关闭文件输入流,可以使用`close()`方法。 调用`close()`方法后,我们将无法使用输入流读取数据。
......@@ -212,7 +212,7 @@ is a line of text inside the file.
* * *
## FileInputStream 的其他方法
## `FileInputStream`的其他方法
| 方法 | 内容描述 |
| `finalize()` | 确保调用`close()`方法 |
......@@ -221,4 +221,4 @@ is a line of text inside the file.
| `mark()` | 标记输入流中已读取数据的位置 |
| `reset()` | 将控件返回到输入流中设置了标记的点 |
要了解更多信息,请访问 [Java FileInputStream(官方 Java 文档)](https://docs.oracle.com/javase/7/docs/api/java/io/FileInputStream.html "Java FileInputStream (official Java documentation)")
\ No newline at end of file
要了解更多信息,请访问 [Java `FileInputStream`(官方 Java 文档)](https://docs.oracle.com/javase/7/docs/api/java/io/FileInputStream.html "Java FileInputStream (official Java documentation)")
\ No newline at end of file
# Java FileOutputStream
# Java `FileOutputStream`
> 原文: [https://www.programiz.com/java-programming/fileoutputstream](https://www.programiz.com/java-programming/fileoutputstream)
#### 在本教程中,我们将借助示例学习 Java FileOutputStream 及其方法。
#### 在本教程中,我们将借助示例学习 Java `FileOutputStream`及其方法。
`java.io`包的`FileOutputStream`类可用于将数据(以字节为单位)写入文件。
......@@ -14,7 +14,7 @@
* * *
## 创建一个 FileOutputStream
## 创建一个`FileOutputStream`
为了创建文件输出流,我们必须首先导入`java.io.FileOutputStream`包。 导入包后,就可以使用 Java 创建文件输出流。
......@@ -42,17 +42,17 @@ FileOutputStream output = new FileOutputStream(File fileObject);
* * *
## FileOutputStream 的方法
## `FileOutputStream`的方法
`FileOutputStream`类提供了`OutputStream`类中存在的不同方法的实现。
### write()方法
### `write()`方法
* `write()`-将单个`字节`写入文件输出流
* `write(byte[] array)`-将指定数组中的字节写入输出流
* `write(byte[] array, int start, int length)`-从位置`开始`开始,将等于`长度`的字节数写入数组的输出流中
### 示例:FileOutputStream 将数据写入文件
### 示例:`FileOutputStream`将数据写入文件
```java
import java.io.FileOutputStream;
......@@ -98,7 +98,7 @@ This is a line of text inside the file.
* * *
### flush()方法
### `flush()`方法
要清除输出流,可以使用`flush()`方法。 此方法强制输出流将所有数据写入目标。 例如,
......@@ -133,17 +133,17 @@ public class Main {
* * *
### close()方法
### `close()`方法
要关闭文件输出流,可以使用`close()`方法。 一旦调用该方法,就不能使用`FileOutputStream`的方法。
* * *
## FileOutputStream 的其他方法
## `FileOutputStream`的其他方法
| 方法 | 内容描述 |
| `finalize()` | 确保调用`close()`方法 |
| `getChannel()` | 返回与输出流关联的`FileChannel`的对象 |
| `getFD()` | 返回与输出流关联的文件描述符 |
要了解更多信息,请访问 [Java FileOutputStream(Java 官方文档)](https://docs.oracle.com/javase/7/docs/api/java/io/FileOutputStream.html#write(int) "Java FileOutputStream (official Java documentation)")。
\ No newline at end of file
要了解更多信息,请访问 [Java `FileOutputStream`(Java 官方文档)](https://docs.oracle.com/javase/7/docs/api/java/io/FileOutputStream.html#write(int) "Java FileOutputStream (official Java documentation)")。
\ No newline at end of file
# Java ByteArrayInputStream
# Java `ByteArrayInputStream`
> 原文: [https://www.programiz.com/java-programming/bytearrayinputstream](https://www.programiz.com/java-programming/bytearrayinputstream)
#### 在本教程中,我们将借助示例学习 Java ByteArrayInputStream 及其方法。
#### 在本教程中,我们将借助示例学习 Java `ByteArrayInputStream`及其方法。
`java.io`包的`ByteArrayInputStream`类可用于读取输入数据数组(以字节为单位)。
......@@ -14,7 +14,7 @@
* * *
## 创建一个 ByteArrayInputStream
## 创建一个`ByteArrayInputStream`
为了创建字节数组输入流,我们必须首先导入`java.io.ByteArrayInputStream`包。 导入包后,就可以创建输入流。
......@@ -34,17 +34,17 @@ ByteArrayInputStream input = new ByteArrayInputStream(byte[] arr, int start, int
* * *
## ByteArrayInputStream 的方法
## `ByteArrayInputStream`的方法
`ByteArrayInputStream`类提供了`InputStream`类中存在的不同方法的实现。
### read()方法
### `read()`方法
* `read()`-从输入流中存在的数组中读取单个字节
* `read(byte[] array)`-从输入流中读取字节并将其存储在指定的数组中
* `read(byte[] array, int start, int length)`-从流中读取等于`长度`的字节数,并从位置`开始`开始存储在指定的数组中
### 示例:ByteArrayInputStream 读取数据
### 示例:`ByteArrayInputStream`读取数据
```java
import java.io.ByteArrayInputStream;
......@@ -92,7 +92,7 @@ ByteArrayInputStream input = new ByteArrayInputStream(array);
* * *
### available()方法
### `available()`方法
要获取输入流中可用字节的数量,我们可以使用`available()`方法。 例如,
......@@ -144,7 +144,7 @@ Available bytes at the end: 2
* * *
### skip()方法
### `skip()`方法
要丢弃并跳过指定的字节数,可以使用`skip()`方法。 例如,
......@@ -187,11 +187,11 @@ public class Main {
Input stream after skipping 2 bytes: 3, 4,
```
在上面的示例中,我们使用`skip()`方法从输入流中跳过 2 个字节的数据。 因此,不会从输入流中读取`1``2`
在上面的示例中,我们使用`skip()`方法从输入流中跳过 2 个字节的数据。 因此,不会从输入流中读取`1``2`
* * *
### close()方法
### `close()`方法
要关闭输入流,可以使用`close()`方法。
......@@ -199,7 +199,7 @@ Input stream after skipping 2 bytes: 3, 4,
* * *
## ByteArrayInputStream 的其他方法
## `ByteArrayInputStream`的其他方法
| 方法 | 内容描述 |
| `finalize()` | 确保调用`close()`方法 |
......@@ -207,4 +207,4 @@ Input stream after skipping 2 bytes: 3, 4,
| `reset()` | 将控件返回到输入流中设置了标记的点 |
| `markSupported()` | 检查输入流是否支持`mark()``reset()` |
要了解更多信息,请访问 [Java ByteArrayInputStream(Java 官方文档)](https://docs.oracle.com/javase/7/docs/api/java/io/ByteArrayInputStream.html "Java ByteArrayInputStream (official Java documentation)")
\ No newline at end of file
要了解更多信息,请访问 [Java `ByteArrayInputStream`(Java 官方文档)](https://docs.oracle.com/javase/7/docs/api/java/io/ByteArrayInputStream.html "Java ByteArrayInputStream (official Java documentation)")
\ No newline at end of file
# Java ByteArrayOutputStream
# Java `ByteArrayOutputStream`
> 原文: [https://www.programiz.com/java-programming/bytearrayoutputstream](https://www.programiz.com/java-programming/bytearrayoutputstream)
#### 在本教程中,我们将借助示例学习 Java ByteArrayOutputStream 及其方法。
#### 在本教程中,我们将借助示例学习 Java `ByteArrayOutputStream`及其方法。
`java.io`包的`ByteArrayOutputStream`类可用于写入输出数据数组(以字节为单位)。
......@@ -14,7 +14,7 @@
* * *
## 创建一个 ByteArrayOutputStream
## 创建一个`ByteArrayOutputStream`
为了创建字节数组输出流,我们必须首先导入`java.io.ByteArrayOutputStream`包。 导入包后,就可以创建输出流。
......@@ -34,18 +34,18 @@ ByteArrayOutputStream out = new ByteArrayOutputStream(int size);
* * *
## ByteArrayOutputStream 的方法
## `ByteArrayOutputStream`的方法
`ByteArrayOutputStream`类提供`OutputStream`类中存在的不同方法的实现。
### write()方法
### `write()`方法
* `write(int byte)`-将指定的字节写入输出流
* `write(byte[] array)`-将指定数组中的字节写入输出流
* `write(byte[] arr, int start, int length)`-从位置`开始`开始,将等于`长度`的字节数写入数组的输出流中
* `writeTo(ByteArrayOutputStream out1)`-将当前输出流的整个数据写入指定的输出流
### 示例:ByteArrayOutputStream 写入数据
### 示例:`ByteArrayOutputStream`写入数据
```java
import java.io.ByteArrayOutputStream;
......@@ -95,7 +95,7 @@ ByteArrayOutputStream output = new ByteArrayOutputStream();
* * *
### 从 ByteArrayOutputStream 访问数据
### 从`ByteArrayOutputStream`访问数据
* `toByteArray()`-返回输出流中存在的数组
* `toString()`-以字符串形式返回输出流的全部数据
......@@ -146,11 +146,11 @@ Data using toString(): This is data.
在上面的示例中,我们创建了一个字节数组来存储`toByteArray()`方法返回的数据。
然后,我们使用了 for 循环来访问数组中的每个字节。 在此,使用类型转换将每个字节转换为相应的字符。
然后,我们使用了`for`循环来访问数组中的每个字节。 在此,使用类型转换将每个字节转换为相应的字符。
* * *
### close()方法
### `close()`方法
要关闭输出流,可以使用`close()`方法。
......@@ -158,10 +158,10 @@ Data using toString(): This is data.
* * *
## ByteArrayOutputStream 的其他方法
## `ByteArrayOutputStream`的其他方法
| 方法 | 内容描述 |
| `size()` | 返回输出流中数组的大小 |
| `flush()` | 清除输出流 |
要了解更多信息,请访问 [Java ByteArrayOutputStream(Java 官方文档)](https://docs.oracle.com/javase/7/docs/api/java/io/ByteArrayOutputStream.html "Java ByteArrayOutputStream (official Java documentation)")
\ No newline at end of file
要了解更多信息,请访问 [Java `ByteArrayOutputStream`(Java 官方文档)](https://docs.oracle.com/javase/7/docs/api/java/io/ByteArrayOutputStream.html "Java ByteArrayOutputStream (official Java documentation)")
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册