标题:关于文件流的操作
只看楼主
教皇
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2011-10-6
得分:0 
回复 9楼 TonyDeng
另外问一句。fclose 在c++可以用吗?
2012-05-13 23:49
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
你用流file.open(),自然也是用流file.close()关闭。用同一套函数。

授人以渔,不授人以鱼。
2012-05-13 23:52
教皇
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2011-10-6
得分:0 
file.open()函数不是void类型的吗?怎么能有返回值呢
2012-05-13 23:55
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
关闭之后要再file.open()一次,这次是根据前面的结果重新设置打开参数的,即你原先file2.open()中的参数。检测文件存在,用的是这一种参数,文件新建,又是另一种参数。

授人以渔,不授人以鱼。
2012-05-13 23:59
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
代码的逻辑流程是这样:

if(文件存在)
{
    按存在的逻辑处理
}
else
{
    按不存在的逻辑处理
}

三个块中,各有各的代码,不要混在一起。你那种代码的写法,就是平时不注意训练分解函数的后果,大杂烩。企图用一个变量身兼多职来达到节约、高效使用的代码的目的,过分追求效率养成的坏习惯。编程都像这样下去,代码多起来,死得快。

授人以渔,不授人以鱼。
2012-05-14 00:03
教皇
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2011-10-6
得分:0 
回复 14楼 TonyDeng
麻烦大神帮忙写出来好吗。。。不好意思
这个文件流没怎么用过,今天才自学的
2012-05-14 00:03
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
我没开编译环境,无法给你准确的代码,只能说大概,具体函数的用法,你自己查找:

程序代码:
success = file.open("password", ios.nocreate);
file.close();
if (!sucess)
{
    file.open("password", ios.create);
    // 创建密码文件
    file.seek();    // 定位到文件头
}
else
{
    file.open("password");
}
// 从此密码文件已经存在并打开,文件指针也在文件头
……
file.close();

授人以渔,不授人以鱼。
2012-05-14 00:10
教皇
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2011-10-6
得分:0 
谢谢
2012-05-14 00:13
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
你先自己试试,实在搞不定再说吧。这些东西不是自己努力尝试过、错过,是不会长记性的,一开始给你现成代码,只会害了你。

授人以渔,不授人以鱼。
2012-05-14 02:40



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-367468-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.201058 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved