您当前的位置:首页 > 文章摘抄 > 正文

与你为邻美文,与你为邻美文摘抄(简单易懂讲IO)

关于【与你为邻美文】,与你为邻美文摘抄,今天犇犇小编给您分享一下,如果对您有所帮助别忘了关注本站哦。

内容导航:1、简单易懂讲IO2、与你为邻美文

1、简单易懂讲IO

流式 IO 是传统 IO,通过构造输入输出流,讲信息从一个地方读取,输出到另一个地方。常见的有读取文件以及写入文件。

基本 API

流失 IO 基本可以分为两个门派,一个以InputStream 和 OutputStream 为代表的老牌 IO,一个以 Reader 和 Writer 为代表的新派 IO。

这里仅仅展示最常用 API,其余 API 可以查阅 jdk API

与你为邻美文,与你为邻美文摘抄(简单易懂讲IO)

输入

基本输入

与你为邻美文,与你为邻美文摘抄(简单易懂讲IO)

装饰器输入

基本输入中的流对象,都可以作为装饰器对象的构造器参数

与你为邻美文,与你为邻美文摘抄(简单易懂讲IO)

输出

基本输出

与你为邻美文,与你为邻美文摘抄(简单易懂讲IO)

装饰器输出

与你为邻美文,与你为邻美文摘抄(简单易懂讲IO)

常见用法

读取文件

使用 FileInputStream 读取

下面例子将输入流放入 try-with-resource 块中,以实现资源的自动关闭,本文下面例子都将采用这种形式。

这里可以看到,是一个字节一个字节的读,所以要将其转为 char 才能正常展示,否则展示的都是字节。 由于 InputStream 是字节流,因此,这里读取到的中文展示乱码。

public class Read { /** * 使用 FileInputStream 直接读取 * 由于 InputStream 不支持 Unicode 编码,所以中文显示会乱码 */ public static void fileInputStream() { try ( FileInputStream input = new FileInputStream("Read.java") ) { int n = 0; while (n != -1) { n = input.read(); char c = (char) n; System.out.print(c); } } catch (Exception e) { } } public static void main(String[] args) { Read.fileInputStream(); }}

输出:

package cyrus.file_io.iostream;import java.io.FileInputStream;public class Read { /** * 使用 FileInputStream 直接读取 * 由于 InputStream 不支持 Unicode ç¼–ç ï¼Œæ‰€ä»¥ä¸­æ–‡æ˜¾ç¤ºä¼šä¹±ç  */ public static void fileInputStream() { try ( FileInputStream input = new FileInputStream("Read.java") ) { int n = 0; while (n != -1) { n = input.read(); char c = (char) n; System.out.print(c); } } catch (Exception e) { } } public static void main(String[] args) { Read.fileInputStream(); }}

使用 BufferedInputStream 装饰器读取

以下例子使用 FileInputStream 构造一个 BufferedInputStream 装饰器,该适配器的主要作用是会将读取到的内容填充进缓冲区,其余用法和 FileInputStream 一样。InputStream 是字节流,因此,这里读取到的中文展示乱码。

public class Read { /** * 使用 FileInputStream 构造一个 BufferedInputStream 装饰器,读取,该读取会使用缓冲区 * 由于 InputStream 不支持 Unicode 编码,所以中文会乱码 */ public static void fileInputStreamWithBuffer() { try ( BufferedInputStream input = new BufferedInputStream(new FileInputStream("Read.java")) ) { int n = 0; while (n != -1) { n = input.read(); char c = (char) n; System.out.print(c); } } catch (Exception e) { } } public static void main(String[] args) { Read.fileInputStreamWithBuffer(); }}

输出:

package cyrus.file_io.iostream;import java.io.BufferedInputStream;import java.io.FileInputStream;public class Read { /** * 使用 FileInputStream æž„é€ ä¸€ä¸ª BufferedInputStream 装饰器,读取,该读取会使用缓冲区 * 由于 InputStream 不支持 Unicode ç¼–ç ï¼Œæ‰€ä»¥ä¸­æ–‡ä¼šä¹±ç  */ public static void fileInputStreamWithBuffer() { try ( BufferedInputStream input = new BufferedInputStream(new FileInputStream("Read.java")) ) { int n = 0; while (n != -1) { n = input.read(); char c = (char) n; System.out.print(c); } } catch (Exception e) { } } public static void main(String[] args) { Read.fileInputStreamWithBuffer(); }}

使用 FileReader 进行读取

使用 FileReader 直接读取,这里 Reader 支持 Unicode 编码,因此中文不会乱码,正常显示

public class Read { /** * 使用 FileReader 直接读取 * 由于 Reader 支持 Unicode 编码,因此中文不会乱码,正常显示 */ public static void fileReader() { try ( FileReader reader = new FileReader("Read.java") ) { int n = 0; while (n != -1) { n = reader.read(); char c = (char) n; System.out.print(c); } } catch (Exception e) { } } public static void main(String[] args) { Read.fileReader(); }}

输出:

package cyrus.file_io.iostream;import java.io.BufferedInputStream;import java.io.FileInputStream;import java.io.FileReader;public class Read { /** * 使用 FileReader 直接读取 * 由于 Reader 支持 Unicode 编码,因此中文不会乱码,正常显示 */ public static void fileReader() { try ( FileReader reader = new FileReader("Read.java") ) { int n = 0; while (n != -1) { n = reader.read(); char c = (char) n; System.out.print(c); } } catch (Exception e) { } } public static void main(String[] args) { Read.fileReader(); }}

使用 BufferedReader 装饰器读取

这里使用 FileReader 构造一个 BufferedReader 装饰器,BufferedReader 的主要作用是会将读取到的内容填入缓冲区,并且 BufferedReader 的 lines() 方法将返回一个 stream 流,操作更方便。

public class Read { /** * 使用 FileReader 构造一个 BufferedReader 装饰器,读取,该读取会使用缓冲区 * 由于 Reader 支持 Unicode 编码,因此中文不会乱码,正常显示 */ public static void fileReaderWithBuffer() { try (BufferedReader reader = new BufferedReader(new FileReader("Read.java"))) { reader.lines().forEach(System.out::println); } catch (Exception e) { } } public static void main(String[] args) { Read.fileReaderWithBuffer(); }}

输出:

package cyrus.file_io.iostream;import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.FileInputStream;import java.io.FileReader;public class Read { /** * 使用 FileReader 构造一个 BufferedReader 装饰器,读取,该读取会使用缓冲区 * 由于 Reader 支持 Unicode 编码,因此中文不会乱码,正常显示 */ public static void fileReaderWithBuffer() { try (BufferedReader reader = new BufferedReader(new FileReader("Read.java"))) { reader.lines().forEach(System.out::println); } catch (Exception e) { } } public static void main(String[] args) { Read.fileReaderWithBuffer(); }}

使用 DataInputStream 适配器读取字符串

这里 buildString() 方法读取当前文件,将其拼装为字符串输出,ByteArrayInputStream 读取该字符串的 byte 数组,然后转化为 DataInputStream 适配器进行读取字符串内容。

DataInputStream 主要用于读取基本数据类型

public class Read { /** * 使用 ByteArrayInputStream 构造 DataInputStream 装饰器,输出字符串信息 */ public static void dataInputStream() { try ( DataInputStream inputStream = new DataInputStream(new ByteArrayInputStream(buildString().getBytes())) ) { while (inputStream.available() != 0) { System.out.print((char) inputStream.readByte()); } } catch (Exception e) { } } /** * 通过目前 java 文件构建一个字符串 * * @return */ public static String buildString() { try (BufferedReader reader = new BufferedReader(new FileReader("Read.java"))) { return reader.lines().collect(Collectors.joining("\n")); } catch (Exception e) { } return "ok"; } public static void main(String[] args) { Read.dataInputStream(); }}

写入文件

使用 FileOutputStream 写入

这里直接使用 FileOutputStream 读取 buildString() 方法构造的字符串并将其写入 Read.txt 文件

public class Read { /** * 使用 FileOutputStream 直接写入字符串 */ public static void fileOutputStream() { try ( FileOutputStream output = new FileOutputStream("Read.txt") ) { output.write(buildString().getBytes()); } catch (Exception e) { } } /** * 通过目前 java 文件构建一个字符串 * * @return */ public static String buildString() { try (BufferedReader reader = new BufferedReader(new FileReader("Read.java"))) { return reader.lines().collect(Collectors.joining("\n")); } catch (Exception e) { } return "ok"; } public static void main(String[] args) { Read.fileOutputStream(); }}

输出:实例截图一部分

与你为邻美文,与你为邻美文摘抄(简单易懂讲IO)

使用 BufferedOutputStream 适配器写入

这里使用 FileOutputStream 构造一个 BufferedOutputStream 适配器,BufferedOutputStream 会使用到缓冲区,加快读取写入速度。

public class Read { /** * 使用 FileOutputStream 构造一个 BufferedOutputStream 装饰器,读取,该写入会使用缓冲区 */ public static void fileOutputStreamWithBuffer() { try ( BufferedOutputStream output = new BufferedOutputStream(new FileOutputStream("Read.txt")); ) { output.write(buildString().getBytes()); } catch (Exception e) { } } /** * 通过目前 java 文件构建一个字符串 * * @return */ public static String buildString() { try (BufferedReader reader = new BufferedReader(new FileReader("Read.java"))) { return reader.lines().collect(Collectors.joining("\n")); } catch (Exception e) { } return "ok"; } public static void main(String[] args) { Read.fileOutputStreamWithBuffer(); }}

后面就不展示输出了,所有的输出都是输出到当前工作目录的Read.txt文件夹下,并且文件内容都是当前 .java 文件的内容

2、与你为邻美文

与你为邻美文

与你为邻,我心品味更深;与你为邻,我心感悟更多;与你为邻,我心飞翔更远!

择邻如择友,好的邻居会受益一生,坏的邻居却会毁己前途。我的邻居,无声胜有声。漫漫岁月一直与你为邻——书。

书,与你为邻,我很用心。曾经,你如梦般在我身旁,而我却未曾发觉;即使everyday和你开怀畅饮,我却白痴般没有发现;虽然你日日映入我的眼帘,还是未察觉你的存在。现在,我懂了,我明了,我悟了,你是我无可挑剔的邻居,不是吗?未来,我将更用心,感受你的心灵,保护你脆弱瘦小却蕴含无限哲理与力量的身躯。

与你为邻,我心与你心之间,自由交流。似乎所有人都认为月老只会牵红线,但我觉得,月老还会牵那么一根淡绿的.细线——关于友谊,让你我成为挚友,彼此不分离。既然如此,与你为邻,我想和你“生而影与吾形相依,死而魂与吾梦相接”。与你为邻,让你我之间感动无限,使你我之间记忆饱满!

书,与你为邻,我很贴心。曾经,请原谅我拿笔不动的坏习惯;如今,你的身上一页一页有我送你的记忆,这些记忆不仅在你我脑海中,而且在你我心灵中,再次回首,观望,会情不自禁地感动。我想,现在与以后,都要贴心地照顾你,你是有灵魂的生命,总有那么些凡夫俗子,用金钱来衡量你。

然而你的价值与意义岂在于此?所以我要贴心照顾你,避免那所谓的坏人来伤害你。既然与你为邻,你的事情我就不能放着不管。当你受伤的时候,我会用胶水来治愈你,让你恢复健康;当你哭泣的时候,我会以眼泪来陪伴你,让你停止泪水;当你欢笑的时候,我会拿画笔来描绘你,让你永恒微笑!

书,与你为邻,我很耐心。和你做邻居,是我一生的荣耀。你的身上,虽无鸟语花香,却充满诗情画意;你的身上,虽无动人琴弦,却令人如痴如醉;你的身上,虽无湛蓝天空,却满载我心飞翔!书,与你为邻,我耐心地一步一步,与理想牵手。因为与你为邻,我从不放开理想的手,执着地前行,一如既往,未曾改变。

如今,已知:与你为邻,我有梦想。未来,求证:我的梦不是烟柳一梦,是永恒的醉理数,和你一起!花开花落,经历成功与失败,却仍然可以绽放得惊艳,含情脉脉,楚楚动人。而我之心,与你为邻,理想不会像流星般陨落,却会如朝阳般缓缓升起,光芒四射!

与你为邻,感动继续,记忆继续,梦想继续!书,让我们共同前进,以你心与我心摩擦产生的火花为中心,如抛物线般撒向各处,点燃黑暗的种子,发芽,开花,结果,释放光明!

本文关键词:与你为邻美文片段,与你为邻记叙文,与你为邻美文小说,与你为邻作文800字作文,我与你为邻作文。这就是关于《与你为邻美文,与你为邻美文摘抄(简单易懂讲IO)》的所有内容,希望对您能有所帮助!


声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,谢谢。

上一篇: 飞鸽电动车是品牌吗飞鸽电动车生产厂家在哪里?飞鸽电动车怎么样质量好吗

下一篇: 怎样打繁体字(手机怎样打繁体字)



推荐阅读