请问VC++(MFC)中如何读取文本文件?
需要有具体代码,要求如下:1.文本文件事先已经存在其中存储的是整型数据,格式可自己设定,但要清晰,如1(回车)1(回车)1(回车)。。。2.读取出来的数据只需要数值1,并...
需要有具体代码,要求如下:
1.文本文件事先已经存在 其中存储的是整型数据,格式可自己设定,但要清晰,如1(回车)1(回车)1(回车)。。。
2.读取出来的数据只需要数值1,并且将其存到相应的int型数组中
3.此数组每个数据加上另一数组的值(可能会很大,几十万的)以后再以int型数据存储到原来的文本文件中,格式不变(以备下次仍按1来读取)
谁有可行的代码,帮忙发一下吧,谢谢,在线等 展开
1.文本文件事先已经存在 其中存储的是整型数据,格式可自己设定,但要清晰,如1(回车)1(回车)1(回车)。。。
2.读取出来的数据只需要数值1,并且将其存到相应的int型数组中
3.此数组每个数据加上另一数组的值(可能会很大,几十万的)以后再以int型数据存储到原来的文本文件中,格式不变(以备下次仍按1来读取)
谁有可行的代码,帮忙发一下吧,谢谢,在线等 展开
1个回答
2013-08-14
展开全部
假设你的是TXT 文件 。
用C读,没问题的 。 你在stdafx.h中加上“stdio.h”。
#include<iostream>
#include "stdio.h"
using namespace std;
void main()
{
int data[10000];
int temp=29393;
int dex=0;
int Row =0;
FILE * fp;
fp = fopen("1.txt","a+");
if(NULL == fp) {cout<< "error open the file" ; }
else
{
char charTemp;
while((charTemp=fgetc(fp))!=EOF)
{
if( charTemp == '\
') Row++;
}
fp = fopen("1.txt","a+");
rewind(fp); //将指针移动到开始
for(int i=0;i<Row;i++)
{
fscanf(fp,"%d",data+dex);
dex++;
}
}//读取值
for(int i=0;i<Row;i++)
data[i] = data[i]+ temp ; //...你在这里修改值
fp = fopen("1.txt","w+");//将文件清空
fp = fopen("1.txt","a+");//将文件打开
for(int j=0;j<Row;j++)
fprintf(fp,"%d\
",data[j]);
fclose(fp); //OK 了
}// 记得建代码同级目录下建一个 1.txt . 写几个数字,
// exm
//
1.txt
//
1
//
1
//
1 ( 这里加个换行建)
用C读,没问题的 。 你在stdafx.h中加上“stdio.h”。
#include<iostream>
#include "stdio.h"
using namespace std;
void main()
{
int data[10000];
int temp=29393;
int dex=0;
int Row =0;
FILE * fp;
fp = fopen("1.txt","a+");
if(NULL == fp) {cout<< "error open the file" ; }
else
{
char charTemp;
while((charTemp=fgetc(fp))!=EOF)
{
if( charTemp == '\
') Row++;
}
fp = fopen("1.txt","a+");
rewind(fp); //将指针移动到开始
for(int i=0;i<Row;i++)
{
fscanf(fp,"%d",data+dex);
dex++;
}
}//读取值
for(int i=0;i<Row;i++)
data[i] = data[i]+ temp ; //...你在这里修改值
fp = fopen("1.txt","w+");//将文件清空
fp = fopen("1.txt","a+");//将文件打开
for(int j=0;j<Row;j++)
fprintf(fp,"%d\
",data[j]);
fclose(fp); //OK 了
}// 记得建代码同级目录下建一个 1.txt . 写几个数字,
// exm
//
1.txt
//
1
//
1
//
1 ( 这里加个换行建)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询