c++文件怎么从文件中读出和写入字符串?

其实我是想问

谁能告诉我怎么编写这个程序:

从文件“file1.txt”中读出一串包含若干数字和英文字母的字符串,将其中的数字字符挑选出来,
并将他们按由小到大的顺序存入文本文件“filenum.txt”中

急求啊,答的快又好的有100分的加分!!!!
说详细点好吗````

一般来说在C++语言中读取txt文件的信息有三种方法:

1、使用C语言标准文件I/O中的fopen()、fread()等等函数。示例如下(vc6.0下编译通过):

#include<stdio.h>
FILE*stream;
void main(void)
{
long l;
float fp;
char s[81];
char c;
 
stream=fopen("fscanf.out","w+");
if(stream==NULL)
printf("Thefilefscanf.outwasnotopened\n");
else
{
fprintf(stream,"%s%ld%f%c","hello world",  
65000,3.14159,'x');
/*Setpointertobeginningoffile:*/
fseek(stream,0L,SEEK_SET);
/*Readdatabackfromfile:*/
fscanf(stream,"%s",s);
fscanf(stream,"%ld",&l);
fscanf(stream,"%f",&fp);
fscanf(stream,"%c",&c);
/*Outputdataread:*/
printf("%s\n",s);
printf("%ld\n",l);
printf("%f\n",fp);
printf("%c\n",c);
fclose(stream);
}
}

2、使用C++语言中的文件I/O中的ofstream,ifstream,fstream。示例如下(vc6.0下编译通过):

    #include <iostream>
    #include <fstream>
    #include <cstdlib>
      using namespace std;
    
    int main () {
        char buffer[256];
        ifstream in("test.txt");
        if (! in.is_open())
        { cout << "Error opening file"; exit (1); }
        while (!in.eof() )
        {
            in.getline (buffer,100);
            cout << buffer << endl;
        }
        return 0;
    }

3、使用操作系统中的API函数,比如Windows上的ReadFile()、OpenFile()等等,现在操作系统一般都具备内存文件映射功能,对于大的txt文件,一般都使用这种方式操作。 

温馨提示:内容为网友见解,仅供参考
第1个回答  2008-12-22
FILE *fin=freopen("input.txt","r",stdin);
FILE *fout=freopen("outfile.txt","w",stdout);
加上这个就和普通的命令行下读写一样了。。你可以尝试一下,如果都加上就是文件读写,在控制台就看不到信息的
你可以把input.txt 改成file1.txt然后再处理
第2个回答  2008-12-22
#include <iostream>
#include <fstream>
#include <string>
using namespace std;

int main()
{
ifstream input;
input.open("file1.txt");
if (input.fail())
{
cout<<"open the file error!\n";
exit(1);
}

string str;
if (input>>str)//输入串
{
int len = str.length();
string result;
int count = 0;
int i;
for (i = 0; i < len; i++)
{
if (isdigit(str[i]))//判断串里的数字
{
result += str[i];
count++;
}
}

int k;
int temp;

for (i = 0; i < count -1; i++)//排序
{
k = i;
for (int j = i+1; j < count; j++)
{
if (result[j] < result[k])
{
k = j;
}
}

if (k != i)
{
temp = result[k];
result[k] = result[i];
result[i] = temp;
}

}

ofstream output;
output.open("filenum.txt");
if (output.fail())
{
cout<<"open file error!\n";
exit(1);
}

output<<result<<endl;
output.close();
}

input.close();

return 0;

}本回答被提问者采纳
第3个回答  2018-03-22
对任意输入的字符串,将其按照指定的次数插入到指定的文件中
第4个回答  2008-12-22
你打开有误哦! 可可

c++的文件输入输出流中,能够从文件中读取数据的方法有哪些?
1.get()方法:get()方法是文件输入流中最基本的读取字符的方法。通过get()方法可以读取一个字符并将其放入字符变量中。语法:int get()2. getline()方法:getline()方法可以从文件输入流中读取一行数据,并将其存储在字符串变量中。语法:istream& getline(char* str, streamsize n)3. read()方法...

详解下C++中对文本文件的读写操作
文本文件的读写很简单:用插入器(< < )向文件输出;用析取器(> > )从文件输入。假设file1是以输入方式打开,file2以输出打开。示例如下: file2< < " I Love You" ; \/\/向文件写入字符串" I Love You"int i;file1> > i; \/\/从文件输入一个整数值。 这种方式还有一种简单的格式化能力,...

C++中怎么从文件中直接读出某一行或写某一行
读出方法1:以ios::in即文本流方式打开,用getline就可以顺次读到第5行,注意中间使用的缓冲区要大一些,防止到'\\n'时溢出 读出方法2:以ios::binary|ios::in即二进制流输入方式打开,依次判断是否'\\n',同样也可以读出指定的第几行 但是,如果想输出的话,即使用fstream方式打开,如果写入的第5行...

C++如何从文件中读取字符串
一般来说在C++语言中读取txt文件的信息有三种方法:1、使用C语言标准文件I\/O中的fopen()、fread()等等函数。示例如下(vc6.0下编译通过):include<stdio.h>FILE*stream;void main(void){long l;float fp;char s[81];char c; stream=fopen("fscanf.out","w+");if(stream==NULL)printf("The...

C++中如何使用Filestream进行文本写入和读取操作?
C++示例代码展示了如何使用System.IO命名空间的FileStream类进行文本文件的读写操作。首先,我们定义一个名为AddText的方法,用于将UTF-8编码的字符串写入文件流:private static void AddText(FileStream fs, String value){ byte[] info = (new UTF8Encoding(true)).GetBytes(value); fs.Write...

请问在c++中如何进行文件的输入输出以及读入?
C++ 通过以下几个类支持文件的输入输出:ofstream: 写操作(输出)的文件类 (由ostream引申而来) ifstream: 读操作(输入)的文件类(由istream引申而来) fstream: 可同时读写操作的文件类 (由iostream引申而来) 打开文件(Open a file)对这些类的一个对象所做的第一个操作通常就是将它和一个真正的文件联系起来,也就...

c++ 中如何读取文件 并使用文件中的数据
1、在电脑上新建一个文件夹,名称叫txt2array。然后,打开我们的devc++,新建一个控制台c++项目,名称也叫txt2array。2、将项目文件及源代码文件以及我们演示用的数据文件都存放在txt2array文件夹中。3、向数据文件中写入一些演示用数据。4、标准库的输入输出类的关系。5、第一个操作读文件,我们可以...

C++ 从文件读取一行,存入一个字符串数组中
1)从文件读取一行:ifstream infile;infile.open("文件名.txt");if (!infile) { cerr << "error: unable to open input file !!!" << endl;system("pause");} string str;while (getline(infile, str)) { \/\/ 一行一行读 ...} 2)将每个字符串按逗号分离存在一个字符串数组中 设临时...

c++如何读取一个文件中的一部分字符串内容
(可以包括空格一起写入,也可以不保存空格;为了节约我这里讲的 是不保存空格的方式)1、将文件内容读取出来并保存到str中,那么str中的内容是 “MM5net010B1vss!vss!NMOS_3P3W=3.02426e-6L=350.498e-9”;2、定义二个新的字符串str1,str2;3、给str1、str2赋值:str1=str.substr(0,3);st...

C++怎么读取文件中的几个数字在将它们储存给相应的变量
比如在exe的当前文件夹的txt文档读取内容。include<iostream> #include<fstream> using namespace std; int main() { ifstream fin("in.txt"); int a; fin>>a; cout<<a<<endl; return 0; }

相似回答