FileOutputStream vs. FileWriter

当我们要用Java写文件时通常有两个方法:使用FileOutputStream或者FileWriter。

使用FileOutputStream:

两种方法都可以写文件,但是使用FileOutputStream和FileWriter有什么分别呢?

对比这两个类有很多讨论,它们都实现了普通操作系统的i/o概念。我们不需要关心它们是怎么设计的,我们仅仅需要知道选择使用哪个,以及为什么使用它。

Java API中的解释:

FileOutputStream是用来输出原始字节流的,如图像数据。要输出字符流,则使用FileWriter。

如果你对于设计模式也熟悉的话,FileWriter是典型的装饰者模式。我已经写过教程来解释装饰者模式了,因为它对于很多设计来说都很重要。

FileOutputStream的一个应用就是将文件转换成字节数组。

原文链接: Programcreek 翻译: ImportNew.com - 唐小娟

原文发布于微信公众号 - java一日一条(mjx_java)

原文发表时间:2015-12-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏java一日一条

FileOutputStream vs. FileWriter

当我们要用Java写文件时通常有两个方法:使用FileOutputStream或者FileWriter。

6520
来自专栏Java进阶干货

不学无数 — Java 中 IO 和 NIO

I/O 问题是任何编程语言都无法回避的问题,可以说 I/O 问题是整个人机交互的核心问题,因为 I/O 是机器获取和交换信息的主要渠道。在当今这个数据大爆炸时代...

5210
来自专栏学习力

《Java从入门到放弃》JavaSE入门篇:文件操作

19560
来自专栏我是攻城师

Java如何调用Linux命令

51160
来自专栏飞雪无情的博客

Go语言实战笔记(十九)| Go Writer 和 Reader

Go Writer 和 Reader接口的设计遵循了Unix的输入和输出,一个程序的输出可以是另外一个程序的输入。他们的功能单一并且纯粹,这样就可以非常容易的编...

10520
来自专栏项勇

笔记44 | 数据存储之File存储最简单地实现

17340
来自专栏Golang语言社区

Go语言中三种不同md5计算方式的性能比较

前言 本文主要介绍的是三种不同的 md5 计算方式,其实区别是读文件的不同,也就是磁盘 I/O, 所以也可以举一反三用在网络 I/O 上。下面来一起看看吧。 R...

524100
来自专栏Java帮帮-微信公众号-技术文章全总结

MySQL数据库备份与还原

MySQL数据库备份与还原 今天就分享代码,大家回去看看研究下! import java.io.BufferedReader; import java.io....

47650
来自专栏java学习

Java基础总结大全(4)

最新通知 ●回复"每日一练"获取以前的题目! ●【新】Android视频更新了!(回复【安卓视频】获取下载链接) ●【新】Ajax知识点视频更新了!(回复【学习...

378130
来自专栏码农分享

1.HtmlAgilityPack 爬取优酷电影名

爬虫的制作主要分为三个方面 1、加载网页结构 2、解析网页结构,转变为符合需求的数据实体 3、保存数据实体(数据库,文本等)

13620

扫码关注云+社区

领取腾讯云代金券