在程序设计中,文件常用的操作不外乎——打开、读、写、流指针操作、关闭。在回答问题时,却发现很多道友没有真正掌握这些简单的操作。为此,博主就文件的一系列操作进行详细介绍,供道友们学习。
一、文件的相关概念
(一)文件及文件类型
计算机上的文件其实是数据的集合,对文件的读写其实是对数据的读写。
文件可以大致分为两种:文本文件和二进制文件。
1、
文本文件
:它的每一个字节存放的是一个ASCII码,代表一个字符。
2、
二进制文件
:将内存中的数据按照其在内存中的存储形式原样存放在磁盘上。
文本文件用记事本打开,显示的是字符,如图(1)。而用记事本打开一个二进制文件则显示的是一堆乱码,如图(2)。
(二)文件的路径
1、文件的路径分隔符
(1)正斜杠(左斜杠),符号是”/”
(2)反斜杠(右斜杠),符号是””,但是在c++编程中,由于反斜杠还有转义字符的意思,改写成双反斜杠”\”。
总的来说,在C++编程中,路径符号只有”/“和”\”。
2、文件的绝对路径——英文的双引号
定义:文件在硬盘上真正存在的路径。
例1:a.txt文件是在D盘的wamp目录下的img子目录中。
表示①:”D:/wamp/img/a.txt”
表示②:”D:\wamp\img\a.txt”
3、文件的相对路径(重在理解)——英文的双引号
定义:目标文件相对于当前文件的路径。
表达形式:
(1)”./“或”.\”表示显示当前目录,也可以省略,表示默认当前目录
(2)”…/”或”…\”表示返回到上一级的目录。
(3)如果有多个上一级目录,可以使用多个“…/”或”…\”。
例2:”test.cpp”所在目录为”D:/wamp/”,而”a.txt”所在目录为 ”D:/wamp”。
那 么”a.txt”相对于”test.cpp”文件来说,是在其所在的当前目录里。因此,
”a.txt”文件的相对路径为:
”./a.txt” 或 ”.\a.txt” (显示当前目录)
”a.txt” (默认当前目录)
例3:”test.cpp”所在目录为”D:/wamp/www”,而”a.txt”所在目录为”D:/wamp”。
那 么”a.txt”相对于”test.cpp”文件来说,是在其所在目录的上级目录里。因此,
”a.txt”文件的相对路径为:”…/a.txt” 或 ”…\a.txt”
例4:”test.cpp”所在目录为”D:/wamp/www/file”,而”a.txt”所在目录为”D:/wamp”。
那 么”a.txt”相对于”test.cpp”文件来说,是在其所在目录的上级目录的上级目录里。因此,”a.txt”文件的相对路径为:”…/…/a.txt” 或 ”…\…\a.txt” (多个上级目录)
(三ÿ