outputstream类或writer类的子类_java private

outputstream类或writer类的子类_java privateJavaOutputStreamWriter类在本教程中,我们将借助示例学习JavaOutputStreamWriter及其方法。java.io包的OutputStreamWriter类可用于将字符形式的数据转换为字节形式的数据。它继承了抽象类Writer。OutputStreamWriter类可与其他输出流一起使用。它也被称为字节流和字符流之间的桥梁。这是因为OutputStreamW…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Java OutputStreamWriter 类

在本教程中,我们将借助示例学习Java OutputStreamWriter及其方法。

java.io包的OutputStreamWriter类可用于将字符形式的数据转换为字节形式的数据。

它继承了抽象类Writer。

a988cc245851cb7fd11fe245c2d3d412.png

OutputStreamWriter类可与其他输出流一起使用。 它也被称为字节流和字符流之间的桥梁。 这是因为OutputStreamWriter会将其字符转换为字节。

例如,某些字符需要2个字节存储在存储器中。要写入此类数据,我们可以使用输出流写入器,该输出流写入器将字符转换为相应的字节并将字节存储在一起。

创建一个OutputStreamWriter

为了创建OutputStreamWriter,我们必须先导入java.io.OutputStreamWriter包。导入包后,就可以在这里创建输出流写入器。

//创建一个OutputStream

FileOutputStream file = new FileOutputStream(String path);

//创建一个OutputStreamWriter

OutputStreamWriter output = new OutputStreamWriter(file);

在以上示例中,我们创建了一个名为output的OutputStreamWriter以及一个名为FileOutputStream的文件。

在这里,我们使用默认的字符编码将字符写入输出流。

但是,我们可以指定用于写入数据的字符编码类型(UTF8或UTF16)。

//创建一个OutputStreamWriter,指定字符编码

OutputStreamWriter output = new OutputStreamWriter(file, Charset cs);

在这里,我们使用Charset该类来指定字符编码的类型。

OutputStreamWriter的方法

OutputStreamWriter类为Writer类中出现的不同方法提供了实现。

write()方法write() -向写入器写一个字符

write(char[] array) – 将指定数组中的字符写入写入器

write(String data) – 将指定的字符串写入写入器

示例:OutputStreamWriter将数据写入文件

import java.io.FileOutputStream;

import java.io.OutputStreamWriter;

public class Main {

public static void main(String args[]) {

String data = “This is a line of text inside the file.”;

try {

// 创建 FileOutputStream

FileOutputStream file = new FileOutputStream(“output.txt”);

//创建一个OutputStreamWriter

OutputStreamWriter output = new OutputStreamWriter(file);

//将字符串写入文件

output.write(data);

//关闭 writer

output.close();

}

catch (Exception e) {

e.getStackTrace();

}

}

}

在上面的示例中,我们使用文件输出流创建了一个输出流读取器。输出流阅读器与output.txt文件链接。

FileOutputStream file = new FileOutputStream(“output.txt”);

OutputStreamWriter output = new OutputStreamWriter(file);

要将数据写入文件,我们使用了write()方法。

在这里,当我们运行程序时,output.txt文件将填充以下内容。

This is a line of text inside the file.

getEncoding()方法

getEncoding()方法可用于获取用于将数据写入输出流的编码类型。例如,

import java.io.OutputStreamWriter;

import java.nio.charset.Charset;

import java.io.FileOutputStream;

class Main {

public static void main(String[] args) {

try {

// 创建一个输出流

FileOutputStream file = new FileOutputStream(“output.txt”);

// 创建具有默认编码的输出流阅读器

OutputStreamWriter output1 = new OutputStreamWriter(file);

// 创建指定编码的输出流阅读器

OutputStreamWriter output2 = new OutputStreamWriter(file, Charset.forName(“UTF8”));

// 返回输出流的字符编码

System.out.println(“output1的字符编码: ” + output1.getEncoding());

System.out.println(“output2的字符编码: ” + output2.getEncoding());

// 关闭 reader

output1.close();

output2.close();

}

catch(Exception e) {

e.getStackTrace();

}

}

}

输出结果output1的字符编码: Cp1252

output2的字符编码: UTF8

在上面的示例中,我们创建了2个输出流写入器,分别名为output1和output2。output1没有指定字符编码。因此,getEncoding()方法返回默认字符编码。

output2指定字符编码UTF8。因此,getEncoding()方法返回指定的字符编码。

注意:我们已经使用Charset.forName()方法指定字符编码的类型。

close()方法

要关闭输出流编写器,我们可以使用close()方法。一旦调用了close()方法,就不能使用writer写入数据。

OutputStreamWriter 其他方法方法描述

flush()强制将写入器中存在的所有数据写入相应的目的地

append()将指定字符插入当前编写器

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/194984.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Maven下载安装

    Maven下载安装

    2021年7月20日
    60
  • 文本分类算法的效果[通俗易懂]

    文本分类算法的效果[通俗易懂]基于统计的分类算法是主流,主要包括以下几种分类模型:相似度模型(Rocchio、K-近邻)、概率模型(贝叶斯)、线性模型(LLSF、SVM)、非线性模型(决策树、神经网络)、组合模型。对于这些分类算法,国内外很多研究者进行了客观评测(Yang,1999;Joachims,1998;He,2000;Tsay,2000;庞剑锋,2001;王灏,2003;李保利,2003;周雪忠,

    2022年6月3日
    40
  • 十三、外观模式—— 简化接口 #和设计模式一起旅行#

    我不想成为上帝或英雄,只想成为一棵树,为岁月而生长,不伤害任何人。 ——米沃什故事背景在英国体验了康桥的魅力,我挥一挥衣袖,不带走一片云彩,但是 英国的天空没有留下我的痕迹,但我曾去过。哈哈!从英国到法国,在浪漫的巴黎,我和设计模式MM感受到这个城市别样的风景,很是吸引人,我们决定在这里待一段时间在走。于是去政府部门办理一些手续,本来以为会花费很多时间的,因为之前办…

    2022年2月27日
    40
  • web前端 | 如何选择撸码神器

    web前端 | 如何选择撸码神器进来,不少小伙子、小妹子来问一个家常便饭,但又逃不脱的问题:小北哥哥,现在这么多编辑器,我该用哪一个好啊,看着都不孬啊(孬字用得好!)此篇文章,纯客观分析顺便吹逼,老鸟和大神直接略过吧!省的你们看到我写这个问题,再说我烦不烦啊,这问题都讨论了多少年了,甚至好多群里,一看到谁在讨论编辑器,就要送飞机票。但很多转入前端的孩子还是很迷茫,能力和悟性也分三六九等,人不同,自然适合自己…

    2022年8月22日
    8
  • android学习笔记之ImageView的scaleType属性

    android学习笔记之ImageView的scaleType属性我们知道,ImageView有一个属性叫做scaleType,它的取值一共有八种,分别是:matrix,fitXY,fitStart,fitCenter,fitEnd,center,centerCrop,centerInside。那我们下面一起来看看这八种取值分别代表什么意思。我用两张图片来做demo,这两张图片的分辨率一大一小,图片分别叫做big和small。原图如下:big:small:OK,

    2022年6月15日
    25
  • nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address 

    nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address 

    2021年10月8日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号