当前位置: 首页 > news >正文

自助网站建设系统软件自己免费建设网站

自助网站建设系统软件,自己免费建设网站,wordpress 回复提醒,做网站需要Excel表格吗咦咦咦#xff0c;各位小可爱#xff0c;我是你们的好伙伴——bug菌#xff0c;今天又来给大家普及Java SE相关知识点了#xff0c;别躲起来啊#xff0c;听我讲干货还不快点赞#xff0c;赞多了我就有动力讲得更嗨啦#xff01;所以呀#xff0c;养成先点赞后阅读的好… 咦咦咦各位小可爱我是你们的好伙伴——bug菌今天又来给大家普及Java SE相关知识点了别躲起来啊听我讲干货还不快点赞赞多了我就有动力讲得更嗨啦所以呀养成先点赞后阅读的好习惯别被干货淹没了哦~ 本文收录于「滚雪球学Java」专栏专业攻坚指数级提升助你一臂之力带你早日登顶欢迎大家关注收藏持续更新中upupup 环境说明Windows 10 IntelliJ IDEA 2021.3.2 Jdk 1.8文章目录 前言摘要Writer类概述源代码解析应用场景案例将数据写入文件将数据在控制台输出 优缺点分析优点缺点 类代码方法介绍测试用例测试结果代码解析 全文小结附录源码 总结☀️建议/推荐你关于我 前言 在Java开发中我们经常需要进行文件的读写操作。Java中提供了几种不同的类来实现文件的读写功能其中Writer类是其中之一。在本文中我们将深入探讨Writer类的实现以及应用场景。 摘要 本文旨在介绍Java中Writer类的实现以及应用场景。我们将会分析Writer类的源代码通过案例来介绍Writer类的应用场景并对其进行优缺点分析。最后我们将会介绍Writer类的常用方法以及测试用例最终总结本文的内容。 Writer类 概述 Writer类是Java中用于写入字符流的抽象类。它是所有写入字符流类的基类包括了字符输出流和字节输出流。Writer类提供了一系列的方法来写入字符数据可以将字符转换成字节并写入到输出流中。 其中它继承了java.lang.Object类同时实现了Closeable、Flushable和Appendable接口。它的继承关系如下 java.lang.Object||java.io.Writer||------java.io.OutputStreamWriter||------java.io.CharArrayWriter||------java.io.FilterWriter| || |------java.io.BufferedWriter| || |------java.io.PrintWriter| || |------java.io.StringWriter|||------java.io.PipedWriter||------java.io.Writer其中OutputStreamWriter类继承于Writer它是将字符流转换为字节流的桥梁。CharArrayWriter类同样继承于Writer它是一个字符数组输出流。FilterWriter类是Writer类的过滤器它也是抽象类其子类包括BufferedWriter、PrintWriter和StringWriter。PipedWriter是管道的输出流它用于跨多线程或多进程通信。Writer类本身也继承于自己这是为了方便其他类继承Writer类而设计的。 源代码解析 Writer类的源代码相对简单其主要实现了flush()、close()、write(char cbuf[])、write(char cbuf[], int off, int len)和write(String str)等方法。 下面是Writer类部分源代码的解析 public abstract class Writer implements Appendable, Closeable, Flushable {private char[] writeBuffer;private static final int WRITE_BUFFER_SIZE 1024;private String lineSeparator;protected Object lock;protected Writer() {this.lock this;this.writeBuffer new char[WRITE_BUFFER_SIZE];this.lineSeparator java.security.AccessController.doPrivileged(new sun.security.action.GetPropertyAction(line.separator));}public void write(char c[]) throws IOException {write(c, 0, c.length);}public void write(char c[], int off, int len) throws IOException {synchronized (lock) {int bOff 0;while (len 0) {if (writeBuffer null || len writeBuffer.length) {implWrite(c, off bOff, len);return;}if (bOff len writeBuffer.length) {flushBuffer();}int n Math.min(writeBuffer.length - bOff, len);System.arraycopy(c, off bOff, writeBuffer, bOff, n);bOff n;len - n;}}}public void write(String str) throws IOException {write(str, 0, str.length());} }以上代码中我们可以看出Writer类中定义了字符数组writeBuffer和字符串lineSeparator。在构造函数中初始化了writeBuffer和lineSeparator两个成员变量。 在write(char c[])方法中调用write(char c[], int off, int len)方法并传入数组长度等参数。在write(char c[], int off, int len)方法中使用synchronized锁保证线程安全在while循环中不断将字符数组中的元素写入输出流中。 部分源码截图如下展示 应用场景案例 Writer类在Java开发中有广泛的应用场景。以下是Writer类应用场景的一些案例 将数据写入文件 以下示例展示了如何使用Writer类将数据写入文件 package com.example.javase.io.writer;import java.io.FileWriter; import java.io.IOException;/*** author bug菌* version 1.0* date 2023/10/19 16:38*/ public class WriterTest {public static void main(String[] args) {try {FileWriter writer new FileWriter(./template/fileTest.txt);writer.write(ello worldjym);writer.close();} catch (IOException e) {e.printStackTrace();}} }在上述示例中我们创建了FileWriter对象并使用它将字符串写入fileTest.txt文件中。 如上案例测试结果如下 将数据在控制台输出 使用Writer类可以将字符输出到控制台。可以使用OutputStreamWriter类将字符流转换为字节流然后使用PrintWriter类将数据写入控制台。 以下示例展示了如何使用Writer类将数据输出到控制台代码如下 //将数据在控制台输出public static void testFilePrint() {Writer writer new OutputStreamWriter(System.out);PrintWriter printWriter new PrintWriter(writer);printWriter.println(Hello World!);printWriter.flush();printWriter.close();}public static void main(String[] args) {testFilePrint();}如上案例测试结果如下 除了以上场景案例外还有其他的应用场景比如 网络编程在网络编程中Writer类可用于将字符流写入Socket或OutputStream。可以使用OutputStreamWriter类将字符流转换为字节流然后使用BufferedWriter将数据写入输出流。数据库写入在数据库编程中Writer类可用于将字符写入数据库字段。可以使用PreparedStatement类来创建Writer对象然后使用setCharacterStream()方法将数据写入数据库字段。 优缺点分析 Writer类的优点和缺点如下 优点 Writer类提供了一系列的方法用于写入字符数据具有很高的灵活性。 Writer类可以将字符转换成字节并写入到输出流中。 Writer类可以方便地将数据写入文件、网络流等。 缺点 Writer类在写操作时需要使用synchronized锁实现线程安全可能会影响程序的性能。 Writer类的效率与底层的操作系统以及硬件有关。 类代码方法介绍 Writer类中一些常用的方法如下 方法名作用void flush() throws IOException该方法将缓冲区中的数据写入到目标输出流中。void close() throws IOException该方法关闭输出流并释放与其相关的资源。void write(char cbuf[]) throws IOException该方法接收一个字符数组并将其写入到输出流中。void write(char cbuf[], int off, int len) throws IOException该方法接收一个字符数组、一个偏移量和一个长度从偏移量开始写入指定长度的字符到输出流中。void write(String str) throws IOException该方法接收一个字符串并将其写入到输出流中。 如上就是我自认为Writer类的一些常用方法如果你想了解更多可以去专研下它的源码绝对收获颇多。 测试用例 以下是一个测试用例用于演示Writer类的使用 public class WriterTest {public static void main(String[] args) {try {FileWriter writer new FileWriter(output.txt);writer.write(Hello World!);writer.close();System.out.println(Write Successfully!);} catch (IOException e) {e.printStackTrace();}} }在该测试用例中我们创建了FileWriter对象并使用它将字符串写入fileTest.txt文件中。最后输出Write Successfully!表示数据写入成功。 测试结果 如下是通过如上测试用例所进行的演示结果截图仅供参考 代码解析 针对如上测试用例我这里做个代码分析以帮助大家更快的理解并运用它该测试用例主要是演示如何使用 FileWriter 类将文本写入文件。 具体解释如下 导入需要使用的包 import java.io.*;创建一个类并定义一个静态方法main在main方法中使用 try-catch 语句捕获可能产生的IOException异常。 创建FileWriter对象并指定要写入的文件路径。实例化 FileWriter 对象的时候可以使用相对路径或者绝对路径这里使用了./template/fileTest.txt相对路径表示法。 FileWriter writer new FileWriter(./template/fileTest.txt);调用 write() 方法将要写入的字符串写入文件。 writer.write(hello worldjym);关闭 FileWriter 对象调用close() 方法是为了释放该文件的句柄资源关闭写文件操作。 在 catch 块中打印异常信息。 全文小结 本文介绍了Java中的Writer类包括其实现、应用场景、优缺点分析和常用方法等。我们还演示了如何使用Writer类将数据写入文件和网络流中。 附录源码 如上涉及所有源码均已上传同步在「Gitee」提供给同学们一对一参考学习辅助你更迅速的掌握。 总结 Writer类是Java中用于写入字符流的抽象类。它提供了一系列的方法用于写入字符数据具有很高的灵活性。但是Writer类需要使用synchronized锁实现线程安全可能会影响程序的性能。在实际开发中我们可以根据具体情况选择使用Writer类或其他类来完成文件的读写操作。 ☀️建议/推荐你 无论你是计算机专业的学生还是对编程有兴趣的小伙伴都建议直接毫无顾忌的学习此专栏「滚雪球学Java」bug菌郑重承诺凡是学习此专栏的同学均能获取到所需的知识和技能全网最快速入门Java编程就像滚雪球一样越滚越大指数级提升。 最后如果这篇文章对你有所帮助帮忙给作者来个一键三连关注、点赞、收藏您的支持就是我坚持写作最大的动力。 同时欢迎大家关注公众号:「猿圈奇妙屋」 以便学习更多同类型的技术文章免费白嫖最新BAT互联网公司面试题、4000G pdf电子书籍、简历模板、技术文章Markdown文档等海量资料。 关于我 我是bug菌CSDN | 掘金 | infoQ | 51CTO 等社区博客专家历届博客之星Top30掘金年度人气作者Top4051CTO年度博主Top12华为云 | 阿里云| 腾讯云等社区优质创作者全网粉丝合计15w 硬核微信公众号「猿圈奇妙屋」欢迎你的加入免费白嫖最新BAT互联网公司面试题、4000G pdf电子书籍、简历模板等海量资料。
http://www.w-s-a.com/news/323225/

相关文章:

  • 百度微建站access如何与网站连接数据库
  • ppt素材免费网站网站正能量晚上免费软件
  • 个人淘宝客网站如何备案搭建一个平台要多少钱
  • nginx 网站建设淘客网站怎么做首页
  • 网站制作的基本步骤是手机网站建设 新闻
  • 水墨 网站源码工装
  • 任丘网站建设服务网站 建设原则
  • 长沙做一个网站要多少钱网站底部备案代码
  • wordpress构建自定义设置页面seo培训学什么
  • 延安有哪些做网站的公司如何建设网站?
  • 网站建设者属于广告经营者吗网站管理程序
  • 网站内容优化方法深圳市宝安区怎么样
  • 视频网站开发视频公司网站制作多少钱
  • 单页简洁手机网站模板购物软件
  • 素材网站官网低价网站建设费用预算
  • 苏州网站设计kgwl个人网站有什么外国广告做
  • 浙江省网站建设报价简单网站开发工具
  • 物流网站的建设wordpress电视直播插件下载
  • 简述网站开发流程青岛做网站建设价格低
  • 网站开发的业务需求分析杭州推广公司
  • 网站建设技术实现难点app开发需要哪些软件
  • 响水建设局网站做网站需要会哪些知识
  • 企业制作企业网站个人网站可以做百度竞价
  • 做网站找投资人wordpress 5 主题教程
  • 做国外网站汇款用途是什么wordpress图片主题晨曦
  • 网站设计跟网站开发区别为什么网站需要维护
  • m 的手机网站怎么做网络推广方式和方法
  • wordpress图片自动轮播插件seo门户网站建设
  • 制作商业网站传奇网页游戏排名
  • 网站免费推广方案长沙房地产网站设计