JavaEE初阶-IO的一些前置知识

文件IO ---  这里的文件指的是 磁盘/硬盘上的文件.

计算机中存储数据的设备

                                                 速度             存储大小                  成本                    数据是否会丢失

  • CPU(中的寄存器、缓存)   最快             最小                         最贵                     丢失                  
  • 内存                                   其次             其次                         其次                     丢失                
  • 硬盘                                   最慢             最大                         最便宜                  不丢失

对于计算机来说,文件是一个广义的概念:

  • 硬盘上的 普通文件文档等等,点开之后直接是可运行的文件,里面没有再存有其他文件
  • 硬盘上的 目录(电脑中的文件夹

计算机上的一些硬件设备,也被操作系统抽象成了文件:

键盘、显示器、网卡等等

比如c语言中有

printf  和 scanf

fprintf 和 fscanf   

//后面两个是针对文件

fprintf(STDOUT,"hello world") 的效果是等同于 printf("hello world");

STDOUT就是一个文件,而且是一个显示器文件

 

文件是以树结构在硬盘上存储的

这里的树,是N叉树

计算机以此电脑作为  数根节点

下一级就是各个盘符

路径:  操作系统用来描述一个文件的路径的方式

以  / (正)  或   \(反)斜杠来隔断层级

以下面这个文档来举例

绝对路径:

//从盘符开始到目标文件的路径

C:\bless\xxx\file.txt

相对路径:

//从当前位置开始到目标文件的路径

例子一:

比如当前位置在     C:\bless\xxx

则相对路径为         .\file.txt

这里的就代表了当前目录路径 C:\bless\xxx

列子二:

当前位置 C:\bless\xxx\NEXT

相对路径为   ..\file.txt

这里的 .. 就表示的是上一层的目录

关于 /  和  \  ( /正   \反  斜杠)

windows两种方式都支持,但是主流推荐 正斜杠    /

因为   \ 在一些编译器中 代表着转义字符,用起来相对麻烦

文件的两种类型

一、文本文件

//以文本  或 字符串  来理解文件中的内容(也就是说, 文本文件中的所以内容,都是用来表示字符串),这里的二进制内容都是合法的字符

合法的字符:指的是字符编码,例如汉字一般是用   gbk/utf8,英文字母一般是用acsii码表

编译器支持的 字符编码表 所对应的字符才是 合法的字符

二、二进制文件

可以存储任何形式的数据

可以通过记事本方式打开,来判断文件是哪种文件

如果打开后展示的是正常的字符串,如汉字英文等待就是文本文件

如果打开后展示的是乱码加上符号等,就是二进制文件 

有哪些文件是属于二进制文件呢?

这里指的 内容丰富指的是word文档中有很多工具 比如可以调整字体加粗,,颜色,格式,行间距等等, 这种富文本文件就属于二进制文件

 普通的文本文档和.C .Java .cpp 就是文本文件


  • 17
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值