『壹』 C语言如何实现对txt文件的读取和写入
1、使用VS新建空工程,直接点击确定,如下所示。
『贰』 vs读取和修改txt文件
写入文件:
//---------------------------------------------------------------------------
#include <stdio.h>
int main(void)
{
char name[80],pas[80];
FILE *fp=fopen("user.txt","w");/*以写模式("w")打开文件user.txt,如果不存在,会自动创建*/
gets(name);
gets(pas); /*输入名称和密码*/
fputs(name,fp);
fputs(pas,fp);/*将名称和密码以字符串形式写入文件*/
fclose(fp);/*关闭文件*/
return 0;
}
//---------------------------------------------------------------------------
从文件读取:
//---------------------------------------------------------------------------
#include <stdio.h>
int main(void)
{
char name[80],pas[80];
FILE *fp=fopen("user.txt","r");/*以读模式("r")打开文件user.txt*/
fscanf(fp,"%s",name);
fscanf(fp,"%s",pas);/*从文件读取名称和密码字符串*/
printf("%s\n%s",name,pas);
fclose(fp); /*关闭文件*/
return 0;
}
//---------------------------------------------------------------------------
『叁』 vs中使用fopen读取文件放在哪里
vs中使用fopen读取文件放在任意地方 只要你的路径写对了比如fopen("d://我的文件//test.txt");就可以。
fopen的函数原型为: FILE *fopen(const char *filename, const char *mode);其功能是使用给定的模式 mode 打开 filename 所指向的文件。文件顺利打开后,指向该流的文件指针就会被返回。如果文件打开失败则返回 NULL,并把错误代码存在 error 中。该函数位于C 标准库
『肆』 vs2010中 c++ 怎么读写Txt文件括号中的内容
无论读写都要包含<fstream>头文件
读:从外部文件中将数据读到程序中来处理
对于程序来说,是从外部读入数据,因此定义输入流,即定义输入流对象:ifsteam infile,infile就是输入流对象。
这个对象当中存放即将从文件读入的数据流。假设有名字为myfile.txt的文件,存有两行数字数据,具体方法:
int a,b;
ifstream infile;
infile.open("myfile.txt"); //注意文件的路径
infile>>a>>b; //两行数据可以连续读出到变量里
infile.close()
如果是个很大的多行存储的文本型文件可以这么读:
char buf[1024]; //临时保存读取出来的文件内容
string message;
ifstream infile;
infile.open("myfile.js");
if(infile.is_open()) //文件打开成功,说明曾经写入过东西
{
while(infile.good() && !infile.eof())
{
memset(buf,0,1024);
infile.getline(buf,1204);
message = buf;
...... //这里可能对message做一些操作
cout<<message<<endl;
}
infile.close();
}
写:将程序中处理后的数据写到文件当中
对程序来说是将数据写出去,即数据离开程序,因此定义输出流对象ofstream outfile,outfile就是输出流对象,这个对象用来存放将要写到文件当中的数据。具体做法:
ofstream outfile;
outfile.open("myfile.bat"); //myfile.bat是存放数据的文件名
if(outfile.is_open())
{
outfile<<message<<endl; //message是程序中处理的数据
outfile.close();
}
else
{
cout<<"不能打开文件!"<<endl;
}
小例子:
#include <iostream>
#include <iomanip>
#include <fstream>
using namespace std;
int main(){
char buffer[256];
ifstream myfile ("c:\\a.txt");
ofstream outfile("c:\\b.txt");
if(!myfile){
cout << "Unable to open myfile";
exit(1); // terminate with error
}
if(!outfile){
cout << "Unable to open otfile";
exit(1); // terminate with error
}
int a,b;
int i=0,j=0;
int data[6][2];
while (! myfile.eof() )
{
myfile.getline (buffer,10);
sscanf(buffer,"%d %d",&a,&b);
cout<<a<<" "<<b<<endl;
data[i][0]=a;
data[i][1]=b;
i++;
}
myfile.close();
for(int k=0;k<i;k++){
outfile<<data[k][0] <<" "<<data[k][1]<<endl;
cout<<data[k][0] <<" "<<data[k][1]<<endl;
}
outfile.close();
return 0;
}
『伍』 VS2008中想读取资源文件txt文档,输出到D盘下,怎么实现
HINSTANCEhInst=AfxGetResourceHandle();
HRSRChRsrc=::FindResource(hInst,MAKEINTRESOURCE(nID),sTR);//type
if(!hRsrc)
returnFALSE;//loadresourceintomemory
DWORDlen=SizeofResource(hInst,hRsrc);
BYTE*lpRsrc=(BYTE*)LoadResource(hInst,hRsrc);
if(!lpRsrc)
returnFALSE;
如果是抄纯文本,其实放在String资源里面,直接LoadString是最简单的。