1,C ofstream fout打开文件的时候如果没有就创建了你可以试试看~
2 , ofstream fouttemptxtiosoutC输出到txt文件如何设置输出用ofstream输出文本到txt文件时,不能设置输出的文本的颜色 。你说呢...
3,c文件操作1.C++可以使用C的函数输入输出写文件 2.C++例子:为了使用下面的方法, 你必须包含头文件(译者注:在标准C++中,已经使用取代< fstream.h> , 所有的C++标准头文件都是无后缀的 。) 。这是 的一个扩展集, 提供有缓冲的文件输入输出操作. 事实上, 已经被包含了, 所以你不必包含所有这两个文件, 如果你想显式包含他们,那随便你 。我们从文件操作类的设计开始, 我会讲解如何进行ASCII I/O操作 。如果你猜是"fstream," 恭喜你答对了! 但这篇文章介绍的方法,我们分别使用"ifstream"?和 "ofstream" 来作输入输出 。如果你用过标准控制台流"cin"?和 "cout," 那现在的事情对你来说很简单 。我们现在开始讲输出部分,首先声明一个类对象 。ofstream fout; 这就可以了,不过你要打开一个文件的话, 必须像这样调用ofstream::open() 。fout.open("output.txt"); 你也可以把文件名作为构造参数来打开一个文件. ofstream fout("output.txt"); 这是我们使用的方法, 因为这样创建和打开一个文件看起来更简单. 顺便说一句, 如果你要打开的文件不存在,它会为你创建一个, 所以不用担心文件创建的问题. 现在就输出到文件,看起来和"cout"的操作很像 。对不了解控制台输出"cout"的人, 这里有个例子 。int num = 150; char name[] = "John Doe"; fout << "Here is a number: " << num << "\n"; fout << "Now here is a string: " << name << "\n"; 现在保存文件,你必须关闭文件 , 或者回写文件缓冲. 文件关闭之后就不能再操作了, 所以只有在你不再操作这个文件的时候才调用它,它会自动保存文件 。回写缓冲区会在保持文件打开的情况下保存文件, 所以只要有必要就使用它 。回写看起来像另一次输出, 然后调用方法关闭 。像这样: fout << flush; fout.close(); 现在你用文本编辑器打开文件,内容看起来是这样: Here is a number: 150 Now here is a string: John Doe 注:例子出处见参考资料 。【ofstream fout用法,C ofstream fout】
4,C文件流问题// 程序在VC6.0下测试成功#include #include void Write(ofstream &out, unsigned int num, unsigned int count, unsigned int data); void Modify(char *fname, unsigned int num, unsigned int data); void Print(char *fname); int main() { bool bModify = true; // 输出数据 ofstream out("key.dat",ios::out); if(!out) { cerr<<"The file key.dat does not exist.\n"; bModify = false; } for(int i=0; i<10; i++) // 向key.dat文件输出10行初始数据 Write(out,i,0,0); cout<<"Finish output the data.\n\n"; out.close(); Print("key.dat"); // 输出文件内容 // 修改数据 if(bModify) { unsigned int N,S; while(1) { cout<<"\nEnter the num(N) and the data(S):\n"; cout<<"N:"; cin>>N; if(N == -1) // 输入-1退出修改状态 return 0; cout<<"S:"; cin>>S; Modify("key.dat", N, S); Print("key.dat"); // 输出文件内容 } } return 0; } void Write(ofstream &out, unsigned int num, unsigned int count, unsigned int data) { // 由于unsigned int取值范围为:0 ~ 4294967295,11个空格间隔可以在修改的时候不影响后面的数据 if(out) out<<<" "<<<" "<<<" \n"; } void Modify(char *fname, unsigned int num, unsigned int data) { fstream stream(fname,ios::in | ios::out); if(!stream) cerr<<"The file key.dat does not exist.\n"; else { stream.seekg(0,ios::beg); // 将文件指针移到起始位置 unsigned int n,c,s; while(!stream.eof()) { int pos = stream.tellg(); stream>>n>>c>>s; // 读取数据 if(n == num) { stream.seekp(pos,ios::beg); stream<<"\n"<<<" "<<<" "<<<" "; break; } } stream.close(); } } void Print(char *fname) { ifstream in(fname,ios::in); if(in) { unsigned int n,c,s; in.seekg(0,ios::beg); // 将文件指针移到起始位置 while(!in.eof()) { n = c = s = -1; in>>n>>c>>s; // 读取数据,使用>>重载符可以跳过空格 if(n != -1) cout<<<"\t"<<<"\t"<<<"\n"; } in.close(); } }5,急求 C fstream 的 使用方法为了使用下面的方法, 你必须包含头文件(译者注:在标准C++中 , 已经使用取代,所有的C++标准头文件都是无后缀的 。) 。这是 的一个扩展集, 提供有缓冲的文件输入输出操作. 事实上, 已经被包含了, 所以你不必包含所有这两个文件, 如果你想显式包含他们,那随便你 。我们从文件操作类的设计开始, 我会讲解如何进行ASCII I/O操作 。如果你猜是"fstream," 恭喜你答对了! 但这篇文章介绍的方法,我们分别使用"ifstream"?和 "ofstream" 来作输入输出 。如果你用过标准控制台流"cin"?和 "cout," 那现在的事情对你来说很简单 。我们现在开始讲输出部分,首先声明一个类对象 。ofstream fout; 这就可以了,不过你要打开一个文件的话, 必须像这样调用ofstream::open() 。fout.open("output.txt"); 你也可以把文件名作为构造参数来打开一个文件. ofstream fout("output.txt"); 这是我们使用的方法, 因为这样创建和打开一个文件看起来更简单. 顺便说一句, 如果你要打开的文件不存在 , 它会为你创建一个, 所以不用担心文件创建的问题. 现在就输出到文件,看起来和"cout"的操作很像 。对不了解控制台输出"cout"的人, 这里有个例子 。int num = 150; char name[] = "John Doe"; fout << "Here is a number: " << num << "\n"; fout << "Now here is a string: " << name << "\n"; 现在保存文件,你必须关闭文件 , 或者回写文件缓冲. 文件关闭之后就不能再操作了, 所以只有在你不再操作这个文件的时候才调用它,它会自动保存文件 。回写缓冲区会在保持文件打开的情况下保存文件, 所以只要有必要就使用它 。回写看起来像另一次输出, 然后调用方法关闭 。像这样: fout << flush; fout.close(); 现在你用文本编辑器打开文件,内容看起来是这样: Here is a number: 150 Now here is a string: John Doe 很简单吧! 现在继续文件输入, 需要一点技巧, 所以先确认你已经明白了流操作,对 "<<" 和">>" 比较熟悉了, 因为你接下来还要用到他们 。#include //使用C++中的文件流对象要包含头文件fstream #include #include using namespace std; double file_length(string filename)//写一个函数来取得一个文本文件的长度 { ifstream inobj(filename.c_str());//创建输入文件流象,并初始化 if(!inobj){//文件不存在 cout<<"file open failed.\n"; return -1; } string t = ""; double len = 0; while(!inobj.eof()){//这里是关键,如果没有读到文件的结尾 inobj>>t;//把遇到非空格或非回车都当成string读取 len++; } inobj.close(); return len; } bool fwrite(string filename,char * content)//将content写入文件中 { ofstream outobj(filename.c_str());//建立输出文件流对象 if(!outobj){ cout<<"file error.\n"; return false; } string t(content); outobj<>i; fout<<<" "; } fin.close(); fout.close(); } } }ofstream是从内存到硬盘,ifstream是从硬盘到内存,其实所谓的流缓冲就是内存空间; 在C++中,有一个stream这个类,所有的I/O都以这个“流”类为基础的,包括我们要认识的文件I/O,stream这个类有两个重要的运算符: 1、插入器(<<)向流输出数据 。比如说系统有一个默认的标准输出流(cout) , 一般情况下就是指的显示器 , 所以,cout<<\"Write Stdout\"<<\\n;就表示把字符串\"Write Stdout\"和换行字符(\\n)输出到标准输出流 。2、析取器(>>)从流中输入数据 。比如说系统有一个默认的标准输入流(cin),一般情况下就是指的键盘,所以,cin>>x;就表示从标准输入流中读取一个指定类型(即变量x的类型)的数据 。在C++中,对文件的操作是通过stream的子类fstream(file stream)来实现的,所以,要用这种方式操作文件,就必须加入头文件fstream.h 。下面就把此类的文件操作过程一一道来 。一、打开文件在fstream类中,有一个成员函数open(),就是用来打开文件的,其原型是: void open(const char* filename,int mode,int access); 参数: filename:要打开的文件名 mode:要打开文件的方式 access:打开文件的属性 打开文件的方式在类ios(是所有流式I/O类的基类)中定义,常用的值如下: ios::app:以追加的方式打开文件 ios::ate:文件打开后定位到文件尾 , ios:app就包含有此属性 ios::binary: 以二进制方式打开文件,缺省的方式是文本方式 。两种方式的区别见前文 ios::in:文件以输入方式打开(文件数据输入到内存) ios::out:文件以输出方式打开(内存数据输出到文件) ios::nocreate: 不建立文件,所以文件不存在时打开失败 ios::noreplace:不覆盖文件,所以打开文件时如果文件存在失败 ios::trunc:如果文件存在,把文件长度设为0可以用“或”把以上属性连接起来 , 如ios::out|ios::binary打开文件的属性取值是: 0:普通文件,打开访问 1:只读文件 2:隐含文件 4:系统文件可以用“或”或者“+”把以上属性连接起来 , 如3或1|2就是以只读和隐含属性打开文件 。例如:以二进制输入方式打开文件c:\\config.sys fstream file1; file1.open(\"c:\\\\config.sys\",ios::binary|ios::in,0);如果open函数只有文件名一个参数,则是以读/写普通文件打开 , 即: file1.open(\"c:\\\\config.sys\"); <=> file1.open(\"c:\\\\config.sys\",ios::in|ios::out,0);另外,fstream还有和open()一样的构造函数 , 对于上例,在定义的时侯就可以打开文件了: fstream file1(\"c:\\\\config.sys\");特别提出的是,fstream有两个子类:ifstream(input file stream)和ofstream(outpu file stream),ifstream默认以输入方式打开文件,而ofstream默认以输出方式打开文件 。[Page] ifstream file2(\"c:\\\\pdos.def\");//以输入方式打开文件 ofstream file3(\"c:\\\\x.123\");//以输出方式打开文件所以,在实际应用中,根据需要的不同,选择不同的类来定义:如果想以输入方式打开,就用ifstream来定义;如果想以输出方式打开,就用ofstream来定义;如果想以输入/输出方式来打开,就用fstream来定义 。你知道cout\cin吧?他的输出终端是屏幕,输入终端是键盘.fstream的输出终端是文件,输入终端也是文件.ofstream是写文件,ifstream是读文件.要使用他们要首先定义他们的对象,并和一个文件关联.
推荐阅读
- 编程培训班课程,Java培训都会学什么课程
- 2020年最新游戏手机,2500最多3000以下的游戏手机买什么好
- 苹果3月份发布会2020,苹果3月发布会视频
- 超级马里奥链接速玩,急需一个经典超级玛丽单机版的链接地址
- 桌面时钟软件,手机桌面时钟软件
- 编程猫社区app,编程猫是一个少儿编程软件吗
- ios视频合成软件,苹果手机下载什么软件可以把多个小视频连接在一起像电影播放
- 苹果系统怎么弄动态壁纸图片,苹果手机怎么用动态壁纸
- 阿里云服务器如何进行挖矿? 阿里服务器怎么挖矿的呀