Java StringWriter
精华
小牛编辑
115浏览
2023-03-14
1 什么是Java StringWriter
Java StringWriter类是一个字符流,它从字符串缓冲区收集输出,该缓冲区可用于构造String。StringWriter类继承Writer类。
在StringWriter类中,未使用系统资源(如网络套接字和文件),因此不需要关闭StringWriter。
2 Java StringWriter的语法
public class StringWriter extends Writer
3 Java StringWriter的方法
方法 | 描述 |
---|---|
void write(int c) | 用于写入单个字符。 |
void write(String str) | 用于写入字符串。 |
void write(String str, int off, int len) | 用于写入字符串的一部分。 |
void write(char[] cbuf, int off, int len) | 用于写入字符数组的一部分。 |
String toString() | 用于以字符串形式返回缓冲区当前值。 |
StringBuffer getBuffer() | 用于返回字符串缓冲区。 |
StringWriter append(char c) | 用于将指定字符附加到Writer。 |
StringWriter append(CharSequence csq) | 用于将指定的字符序列附加到Writer。 |
StringWriter append(CharSequence csq, int start, int end) | 用于将指定字符序列的子序列附加到Writer。 |
void flush() | 用于冲洗流。 |
void close() | 用于关闭流。 |
4 Java StringWriter的例子
让我们看一下使用BufferedReader从流中读取文件数据的StringWriter的简单示例。
package cn.xnip;
/**
* 小牛知识库网: https://www.xnip.cn
*/
import java.io.*;
/**
* Java StringWriter的例子
*/
import java.io.*;
public class Demo {
public static void main(String[] args) throws IOException {
char[] ary = new char[512];
StringWriter writer = new StringWriter();
FileInputStream input = null;
BufferedReader buffer = null;
input = new FileInputStream("D:\\xnip\\test.txt");
buffer = new BufferedReader(new InputStreamReader(input, "UTF-8"));
int x;
while ((x = buffer.read(ary)) != -1) {
writer.write(ary, 0, x);
}
System.out.println(writer.toString());
writer.close();
buffer.close();
}
}
test.txt:
Yiidian provides tutorial in Java, Spring, Hibernate, Android, PHP etc.
输出结果为:
Yiidian provides tutorial in Java, Spring, Hibernate, Android, PHP etc.