2

数字的由来,数字的由来30字(简单易懂讲IO)

关于【数字的由来】,数字的由来30字,今天小编给您分享一下,如果对您有所帮助别忘了关注本站哦。

  • 内容导航:
  • 1、简单易懂讲IO
  • 2、数字的由来

1、简单易懂讲IO

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

基本 API

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

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

数字的由来,数字的由来30字(简单易懂讲IO)

输入

基本输入

数字的由来,数字的由来30字(简单易懂讲IO)

装饰器输入

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

数字的由来,数字的由来30字(简单易懂讲IO)

输出

基本输出

数字的由来,数字的由来30字(简单易懂讲IO)

装饰器输出

数字的由来,数字的由来30字(简单易懂讲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("")); } 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("")); } catch (Exception e) { } return "ok"; } public static void main(String[] args) { Read.fileOutputStream(); }}

输出:实例截图一部分

数字的由来,数字的由来30字(简单易懂讲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("")); } catch (Exception e) { } return "ok"; } public static void main(String[] args) { Read.fileOutputStreamWithBuffer(); }}

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

2、数字的由来

简要回答

数字是古印度人在生产和实践中逐渐发明出来的,再由阿拉伯人传到欧洲。

数字可以说是一项伟大的发明,它解决了生活中很多的问题,可以说没有数字,就没有现代文明的发展,那么数字的由来是怎样的呢?下面让我们一起去了解吧。

详细内容

在古代印度,进行城市建设时需要设计和规划,进行祭祀时需要计算日月星辰的运行,于是,数学计算就产生了。大约在公元前3000年,印度河流域居民的数字就比较先进,而且采用了十进位的计算方法。

到公元前三世纪,印度出现了整套的数字,但在各地区的写法并不完全一致,其中最有代表性的是婆罗门式:这一组数字在当时是比较常用的。它的特点是从“1”到“9”每个数都有专字。现代数字就是由这一组数字演化而来。在这一组数字中,还没有出现“0”(零)的符号。

“0”这个数字是到了笈多王朝(公元320—550年)时期才出现的。公元四世纪完成的数学著作《太阳手册》中,已使用“0”的符号,当时只是实心小圆点“·”。后来,小圆点演化成为小圆圈“0”。这样,一套从“1”到“0”的数字就趋于完善了。这是古代印度人民对世界文化的巨大贡献。

早在原始人时代,人们在生产活动中注意到一只羊与许多羊,一头狼与整群狼在数量上的差异,随着时间的推移慢慢的产生了数的概念。数的概念的形成可能与火的使用一样古老,大约是在30万年以前,它对于人类文明的意义也决不亚于火的使用。

最早人们利用自己的十个指头来记数,当指头不敷应用时,人们开始采用“石头记数”“结绳记数”和“刻痕记数”。在经历了数万年的发展后,直到距今大约五千多年前,才出现了书写记数以及相应的记数系统。

本文关键词:数字的由来小故事,数字的由来手抄报内容,阿拉伯数字的由来,数字的由来和发展史,数字的由来简介。这就是关于《数字的由来,数字的由来30字(简单易懂讲IO)》的所有内容,希望对您能有所帮助!

本文来自网络,不代表本站立场。转载请注明出处: https://tj.jiuquan.cc/a-2045067/
1
上一篇 黄角兰怎么栽培最好,黄桷兰生长环境(MatriMax游戏魔方评测)
下一篇 社保认证在手机上怎么验证,社保认证在手机上怎么操作(事关领取养老金资格认证)

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: alzn66@foxmail.com

关注微信

微信扫一扫关注我们

返回顶部