C语言文件处理中wt是什么操作方式?

比较wt和wb操作方式,wb我知道是以只写方式打开一个二进制文件,wt是什么意思呢... 比较wt和wb操作方式,wb我知道是以只写方式打开一个二进制文件,wt是什么意思呢 展开
 我来答
匿名用户
2013-04-24
展开全部
最常用的文件使用方式及其含义如下:
1,"r".为读而打开文本文件.(不存在则出错)
2,"rb".为读而打开二进制文件.
3,"w".为写而打开腔蠢文本文件.(若不存在则新建,反之,则从文件起始位置写,原内容将被覆盖)
4,"wb".为写而打开二进制文件.
5,"a".为在文件后面添加数据而打开文本文件.(若不存在,则新建;反之,在原文件后追加)
6,"ab".为在文件后面添加数据而打开一个二进制文件.
最常用的文件使用方式及其含义如下:
7,"r+".为读和写而打开文本文件.(读时,从头开始;在写数据时,新数据只覆盖所占的空间,其后不变)
8,"rb+".为读和写而打开二进制文件.只是在随后的读写时,可以由位置函数设置读和写的起始位置.
9,"w+".首先建立一个新文件,进行写操作,随后可以从头开始读.(若文件存在,原内容将全部消失)
10,"wb+".功能与"w+"同.只是在随后的读写时,可以由位置函数设置读和写的起始位置.
最常用的文件使用方式及其含义如下:
11,"a+".功能与"a"相同;只是在文件尾部添加新的数据后,可以从头开始读.
12,"ab+".功能与"a+"相同晌圆档;只是在文件尾部添加新数据之后,可以由位置函数设置开始读的起始位置.
“rt”     只读打开一个文本文件,只允许读数据
“wt”     只写打开或建立一个文本文件,只允许写数据
“at”     追加打开一个文本文件,并在文件末尾写数据
“rb”     只读打开一个二进制文件,只允许读数宴乱据
“wb”     只写打开或建立一个二进制文件,只允许写数据
“ab”     追加打开一个二进制文件,并在文件末尾写数据
“rt+”    读写打开一个文本文件,允许读和写。用fseek确定读写位置,写多少覆盖多少,后面的内容保留。因为磁盘空间是连续的,所以你不能在中间插入,在中间一旦写入就是覆盖与写入内容等长的那些内容。
“wt+”    读写打开或建立一个文本文件,允许读写
“at+”    读写打开一个文本文件,允许读,或在文件末追加数据
“rb+”    读写打开一个二进制文件,允许读和写
“wb+”    读写打开或建立一个二进制文件,允许读和写
“ab+”     读写打开一个二进制文件,允许读,或在文件末追加数据
wenqing8585
2017-09-04 · TA获得超过8252个赞
知道大有可为答主
回答量:8078
采纳率:70%
帮助的人:3859万
展开全部
wt是以只写方式打开一个文本文件。t是windows平台特有的所谓text mode(文本模式)。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sambow0033
推荐于2017-09-15 · 超过21用户采纳过TA的回答
知道答主
回答量:55
采纳率:100%
帮助的人:11万
展开全部
首先复制一段来自MSDN的解释
Open in text (translated) mode. In this mode, CTRL+Z is interpreted as an
end-of-file character on input. In files opened for reading/writing with "a+",
fopen checks for a CTRL+Z at the end of the file and removes it, if
possible. This is done because using fseek and ftell to move
within a file that ends with a CTRL+Z, may cause fseek to behave
improperly near the end of the file.

Also, in text mode, carriage return–linefeed combinations are translated into
single linefeeds on input, and linefeed characters are translated to carriage
return–linefeed combinations on output. When a Unicode stream-I/O function
operates in text mode (the default), the source or destination stream is assumed
to be a sequence of multibyte characters. Therefore, the Unicode stream-input
functions convert multibyte characters to wide characters. For the same reason,
the Unicode stream-output functions convert wide characters to multibyte
characters.
因为之前我也没有用过加 "t" 的模式,但是我可以告诉你从哪里去查,MSDN里面我看了一下,大概意思如下(个人理解):
首先说明,回车和换行是两个不同肢斗衡的概念,对应'\n'和''\r',是两个字符,我们通常所说的回车是指键盘上的Enter,回车只是光标移到一行的开始处,换行是换到下一行(不回车)。
这是一种文本(翻译销含)模式,主要是由于ctrl+z组合键的关系,在这种模式之下,ctrl+z在输入时被解释为文件结束符,当用"a+"的方式打开时,会自动把它删除,但是在使用fseek和ftell函数时会比较关注文件结束,比如fseek的SEEK_END,可能会导致这些函数使用时出现问题。

同样的,在输历做入时,carriage return(回车)和linefeed(换行)结合起来被翻译成单个的换行,在输出时,单个换行被翻译成回车和换行结合起来。再后面的就是对一些宽字符和Unicode的IO流的几句。
相信如果你要是用过十六进制编辑器的话,应该好理解,另外,推荐你下载一些文档,不要直接搜哪个函数怎么用,比如我查的MSDN,或者你在Linux系统中一些命令去查。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
源欣悦0eY
2017-09-04 · TA获得超过333个赞
知道小有建树答主
回答量:163
采纳率:0%
帮助的人:85万
展开全部
wt是以只写方式打开或新建一个文本文件,write text file的意思
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mafangsan
2017-09-15 · TA获得超过1.2万个赞
知道大有可为答主
回答量:1万
采纳率:71%
帮助的人:2576万
展开全部
w是写
t是文本文件
就是只写打开文本文件
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式