Java OutputStreamWriter

原文:https://www.studytonight.com/java-file-io/java-outputstreamwriter

在本教程中,我们将学习 Java 中的OutputStreamWriter 类。此类属于java.io套餐。这个类也被称为字节流和字符流之间的桥梁,因为这个类将其字符转换成字节。

构造器

下表给出了此类构造器的所有变体。

| 施工方 | 描述 | | OutputStreamWriter(OutputStream out) | 它创建一个使用默认字符编码的输出流编写器。 | | OutputStreamWriter(OutputStream out, Charset cs) | 它创建一个使用给定字符集的 OutputStreamWriter。 | | OutputStreamWriter(OutputStream out, CharsetEncoder enc) | 它创建一个使用给定字符集编码器的 OutputStreamWriter。 | | OutputStreamWriter(OutputStream out, String charsetName) | 它创建一个使用命名字符集的 OutputStreamWriter。 |

方法

下表给出了 OutputStreamWriter 类的所有方法。

方法 描述
void close() 它关闭了溪流,先冲洗它。
void flush() 它冲向溪流。
String getEncoding() 它返回该流使用的字符编码的名称。
void write(char[] cbuf, int off, int len) 它写入字符数组的一部分。
void write(int c) 它只写一个字符。
void write(String str, int off, int len) 它写入字符串的一部分。

OutputStreamWriter 的示例。

在下面的方法中,我们使用 OutputStreamWriter 类将数据写入文件,同时创建这个类的对象,我们将流作为参数传递给构造器,然后使用 write 方法将字符写入文件。

package studytonight;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
public class StudyTonight 
{
    public static void main(String args[])
    {
        try
        {
            OutputStream stream = new FileOutputStream("E:\\studytonight\\output.txt"); 
            OutputStreamWriter streamWriter = new OutputStreamWriter(stream);            
            streamWriter.write(65); 
            streamWriter.write(66); 
            streamWriter.write(67); 
            streamWriter.write(68); 
            streamWriter.write(69);    
            streamWriter.flush();            
            streamWriter.close(); 
            System.out.println("Data is written to the file successfully...");
        }
        catch(Exception e)
        {
            System.out.println("Error: "+e.toString());
        }
    }
}

数据成功写入文件...

ABCDE

输出流编写器示例

在下面的例子中,我们实现了write()方法的重载方法。在方法 write(char[] str,int offset,int len)中,str 是我们想要写入的字符串,offset 是它将要写入的起始位置,last parameter len 是它将要写入的字符串的长度。

package studytonight;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
public class StudyTonight 
{
    public static void main(String args[])
    {
        try
        {
            OutputStream stream = new FileOutputStream("E:\\studytonight\\output.txt"); 
            OutputStreamWriter streamWriter = new OutputStreamWriter(stream);            
            String str="Hello Studytonight";
            streamWriter.write(str, 6, 12);    
            streamWriter.flush();            
            streamWriter.close(); 
            System.out.println("Data is written to the file successfully...");
        }
        catch(Exception e)
        {
            System.out.println("Error: "+e.toString());
        }
    }
}

数据成功写入文件...

输出. txt

Studytonight

结论

在本教程中,我们学习了 Java 中的OutputStreamWriter 类。这个类也被称为字节流和字符流之间的桥梁,因为这个类将其字符转换成字节。