📜  Java.io.StringBufferInputStream Java中的类(1)

📅  最后修改于: 2023-12-03 14:42:20.818000             🧑  作者: Mango

Java中的类:java.io.StringBufferInputStream

java.io.StringBufferInputStream 是 Java 中一个用于从字符串中读取字节的类。它继承自 java.io.InputStream 类,可以用于读取字节流。

构造方法
构造方法1:
public StringBufferInputStream(String str)

该构造方法使用一个字符串参数来构造一个 StringBufferInputStream 对象。构造方法会将字符串转换为字节序列,以便随后读取。

构造方法2:
public StringBufferInputStream(StringBuffer sb)

该构造方法使用一个 StringBuffer 参数来构造一个 StringBufferInputStream 对象。构造方法会将 StringBuffer 中的字符转换为字节序列,以便随后读取。

方法

java.io.StringBufferInputStream 类继承自 java.io.InputStream 类,因此它具有 read()skip() 方法,可以用于从流中读取字节。

read() 方法
public int read()

该方法从输入流中读取一个字节。如果已经到达流的末尾,则返回 -1。

skip() 方法
public long skip(long n)

该方法从输入流中跳过 n 个字节。返回值是实际跳过的字节数。

示例

以下示例展示了如何使用 java.io.StringBufferInputStream 类从字符串中读取字节:

String str = "Hello World!";
StringBufferInputStream sbis = new StringBufferInputStream(str);

int ch;
while ((ch = sbis.read()) != -1) {
    System.out.print((char) ch);
}

输出:

Hello World!
注意事项

java.io.StringBufferInputStream 类是线程不安全的,因此不应该在多线程环境下使用。此外,在 Java 11 中已经标记为废弃,推荐使用 java.io.ByteArrayInputStream