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

其实我是想问谁能告诉我怎么编写这个程序:从文件“file1.txt”中读出一串包含若干数字和英文字母的字符串,将其中的数字字符挑选出来,并将他们按由小到大的顺序存入文本文... 其实我是想问

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

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

急求啊,答的快又好的有100分的加分!!!!
说详细点好吗````
展开
 我来答
吉祥二进制
高粉答主

2015-07-09 · 科技改变生活,生活改变科技。
吉祥二进制
采纳数:33926 获赞数:84578

向TA提问 私信TA
展开全部

一般来说在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文件,一般都使用这种方式操作。 

百度网友60eb8d0
2008-12-22 · TA获得超过276个赞
知道小有建树答主
回答量:537
采纳率:50%
帮助的人:385万
展开全部
FILE *fin=freopen("input.txt","r",stdin);
FILE *fout=freopen("outfile.txt","w",stdout);
加上这个就和普通的命令行下读写一样了。。物御你可以尝试一下,如果都加上就是文件读写袜蚂裂,在告闭控制台就看不到信息的
你可以把input.txt 改成file1.txt然后再处理
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
二美知1G
2008-12-22 · TA获得超过273个赞
知道小有建树答主
回答量:213
采纳率:0%
帮助的人:94万
展开全部
#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;

}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
波安阳42
2018-03-22
知道答主
回答量:1
采纳率:0%
帮助的人:887
展开全部
对任意输入的字符串,将其按照指定的次数插入到指定的文件中
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pwh132405
2008-12-22
知道答主
回答量:23
采纳率:0%
帮助的人:0
展开全部
你打开有误哦! 可可
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式