Java StringWriter
类
原文:https://www.studytonight.com/java-file-io/java-stringwriter-class
在本教程中,我们将学习 Java 中的StringWriter
类。Java StringWriter
类是一个从字符串缓冲区收集输出的字符流,可以用来构造字符串。
Java StringWriter 类声明:
这是StringWriter
类的语法声明,这个类扩展了Writer
类。
public class StringWriter extends Writer
构造器:
下表给出了 StringWriter 类的两种变体:
构造器 | 描述 |
---|---|
StringWriter() | 这将使用默认的初始字符串缓冲区大小创建一个新的StringWriter 。 |
字符串书写器(int initialSize) | 这将使用指定的初始字符串缓冲区大小创建一个新的StringWriter 。 |
StringWriter 类的方法:
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) |
此方法用于将指定的字符追加到编写器中。 |
StringWriter append(CharSequence csq) |
此方法用于将指定的字符序列附加到编写器。 |
StringWriter append(CharSequence csq, int start, int end) |
此方法用于将指定字符序列的子序列附加到编写器。 |
void flush() |
此方法用于冲洗流。 |
void close() |
此方法用于关闭流。 |
StringWriter 类的示例:
在这个例子中,我们将看到如何使用 StringWriter 类从文件中读取数据。从文件中读取我们使用的主要概念是,我们可以使用 toString()方法将字符串缓冲区转换为字符串。
package studytonight;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.io.StringWriter;
public class StudyTonight
{
public static void main(String args[])
{
try
{
char[] arr = new char[512];
StringWriter writer = new StringWriter();
FileInputStream input = new FileInputStream("E:\\studytonight\\output.txt");
BufferedReader buffer = new BufferedReader(new InputStreamReader(input, "UTF-8"));
int c;
while ((c = buffer.read(arr)) != -1) {
writer.write(arr, 0, c);
}
System.out.println(writer.toString());
writer.close();
buffer.close();
}
catch(Exception e)
{
System.out.println("Error: "+e.toString());
}
}
}
你好,今晚学习
输出. txt
Hello Studytonight
结论:
在本教程中,我们学习了 Java 中的StringWriter
类。Java StringWriter
类是一个从字符串缓冲区收集输出的字符流,可以用来构造字符串。