Ⅰ 如何用c语言创建一个新文件
C语言可以通过fopen函数创建一个新文件。
细节如下:
1.
使用fopen需要添加头文件
#include
<stdio.h>
2.
创建一个新的文本文件语句如下:
FILE
*fp=fopen("文件名",
"w");
3.
创建一个新的二进制文件的语句如下:FILE
*fp=fopen("文件名",
"wb");
4.
该函数详细说明如下:
5.
函数原型:FILE
*
fopen(const
char
*
path,const
char
*
mode);
6.
返回值:文件顺利打开后,指向该流的文件指针就会被返回。如果文件打开失败则返回NULL,并把错误代码存在errno中。
7.
参数说明:
参数path字符串包含欲打开的文件路径及文件名,参数mode字符串则代表着流形态。
mode有下列几种形态字符串:
r
以只读方式打开文件,该文件必须存在。
r+
以可读写方式打开文件,该文件必须存在。
rb+
读写打开一个二进制文件,允许读写数据,文件必须存在。
w
打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。
w+
打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。
a
以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。
a+
以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。
wb
只写打开或新建一个二进制文件;只允许写数据。
wb+
读写打开或建立一个二进制文件,允许读和写。
ab+
读写打开一个二进制文件,允许读或在文件末追加数据。
例子代码
FILE *fp; //定义文件指针
fp=fopen("d:\\out.txt","w");//打开文件
//写文件的代码
fclose(fp);
//关闭文件
Ⅱ 怎么用C语言在E盘上建立一个文本文件,将键盘上输入的若干个字符存入该文件中,但数字字符除外
以下当参考吧,c++写的--文本文件的输入输出,以及统计英文文本的行数字符数,单词数。改一下头文件,cout cin 改printf scanf 就是了。
方法还是可以借鉴的~
输入:
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
main()
{
string line;//不可以用char定义。
string filename;
fstream file;
cout<<"please input the filename:";
cin>>filename;
file.open(filename.c_str());//输入的是D:\guo.txt
if(!file)
{
cout<<"file open fail"<<endl;
}
while(getline(file, line, '\r'))//从文件中读取字符串到输入输出流中。不可以换成get()。
{
cout<<line<<endl;
}
file.close();
return 0;
}
或者:
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
main()
{
static int line;
static int num;
char ch;
string stringline;
string filename;
ifstream file;
cout<<"please input the filename:";
cin>>filename;
file.open(filename.c_str());//输入的是D:\guo.txt
if(!file)
{
cerr<<"file open fail"<<endl;
exit(-1);
}
else
{
cout<<"the artical is:"<<endl;
while(file.get(ch))
{
cout.put(ch);
}
file.close();
}
return 0;
}
输出:
#include<iostream>
#include<fstream>
using namespace std;
main()
{
char *line=new char;
fstream file;
file.open("d:\\guo.txt",ios::out|ios::trunc);
if(!file)
{
cerr<<"file open or creat error"<<endl;
exit(1);
}
while(cin.get(line,100))
{
file<<line<<endl;
if(cin.get()==' ')
break;
}
file.close();
}
或者:
#include<iostream>
#include<fstream>
using namespace std;
main()
{
char *line=new char;
fstream file;
file.open("d:\\guo.txt",ios::out|ios::trunc);
if(!file)
{
cerr<<"file open or creat error"<<endl;
exit(1);
}
do
{
cin.getline(line,100);
file<<line<<endl;
}
while(strlen(line)>0&&!cin.eof());
file.close();
}
C++ 统计英文文本 中的 行数 单词数
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
main()
{
int num0=0;
int num1=0;
int tempernum0=0;
int line=0;
int i;
string str;//不可以用char定义。
string filename;
fstream file;
cout<<"please input the filename:";
cin>>filename;
file.open(filename.c_str());//输入的是D:\guo.txt
if(!file)
{
cout<<"file open fail"<<endl;
}
cout<<"文本中的内容是:"<<endl;
while(getline(file, str, '\n'))
{
cout<<str<<endl;//文本输出
line++;//行数统计
int n=str.length();
if(n!=0)
tempernum0++;//统计非空行末尾的单词数目
string::iterator itr=str.begin();
for(i=0;i<n-1;i++)
{
if(itr[i]==' '&&itr[i+1]!=' ')
num0++;//字数统计,非空行末尾的单词没有被统计进去,最后要再加上非空行的行数。
}
for(i=0;i<n;i++)
{
if(itr[i]!=' ')
num1++;//字符数目统计
}
}
cout<<"行数是:"<<line<<endl;
cout<<"单词数是:"<<num0+tempernum0<<endl;
cout<<"字符数是:"<<num1<<endl;
file.close();
return 0;
}
Ⅲ 请问要用c语言编程,怎么创建目标文件啊
源代码文件可以用任意文本编辑.
目标文件由编译器生成.具体的生成方法在不同的开发环境上是不同的.
gcc的例子:
gcc -o target_file test.c
编译test.c生成可执行文件target_file
gcc -c test.c
编译test.c ,生成目标文件test.o,但不进行link.
Ⅳ 怎么用c语言生成一个特定大小的文本文件
#include <stdio.h>
void CreateMyFile(char * szFileName,int nFileLength)
{
FILE* fp = fopen(szFileName, "wb+"); // 创建文件
if(fp==NULL)
printf("文件打开失败");
else
{
fseek(fp, nFileLength-1, SEEK_SET); // 将文件的指针 移至 指定大小的位置
fputc(32, fp); // 在要指定大小文件的末尾随便放一个数据
fclose(fp);
}
}
void main()
{
CreateMyFile("test.txt",1024*256); //调用测试
}
Ⅳ 如何用C语言程序创建一个由自己命名的文本
#include<stdlib.h>
#include<stdio.h>
voidmain()
{
FILE*fp;
chara[10];
scanf("%s",a);
getchar();
fp=fopen("C:\迅雷下载\a.txt","w");//这里你的文件没有扩展名把它改成a.txt就可以了!
if(fopen==NULL)
{
printf("filecannotopen");
exit(0);
}
fprintf(fp,"%d",999);
fclose(fp);
}
Ⅵ 用c语言创建一个txt文件,并且写入数据
#include <stdio.h>
int main()
{
//下面是写数据,将数字0~9写入到data.txt文件中
FILE *fpWrite=fopen("data.txt","w");
if(fpWrite==NULL)
{
return 0;
}
for(int i=0;i<10;i++)
fprintf(fpWrite,"%d ",i);
fclose(fpWrite);
//下面是读数据,将读到的数据存到数组a[10]中,并且打印到控制台上
int a[10]={0};
FILE *fpRead=fopen("data.txt","r");
if(fpRead==NULL)
{
return 0;
}
for(int i=0;i<10;i++)
{
fscanf(fpRead,"%d ",&a[i]);
printf("%d ",a[i]);
}
getchar();//等待
return 1;
}
(6)c语言程序设计如何建文本文件扩展阅读:
c语言最常用的文件使用方式及其含义
1、"r".为读而打开文本文件.(不存在则出错)
2、"rb".为读而打开二进制文件.
3、"w".为写而打开文本文件.(若不存在则新建,反之,则从文件起始位置写,原内容将被覆盖)
4、"wb".为写而打开二进制文件.
5、"a".为在文件后面添加数据而打开文本文件.(若不存在,则新建;反之,在原文件后追加)
6、"ab".为在文件后面添加数据而打开一个二进制文件.
7、"r+".为读和写而打开文本文件.(读时,从头开始;在写数据时,新数据只覆盖所占的空间,其后不变)
8、"rb+".为读和写而打开二进制文件.只是在随后的读写时,可以由位置函数设置读和写的起始位置.
9、"w+".首先建立一个新文件,进行写操作,随后可以从头开始读.(若文件存在,原内容将全部消失)
10、"wb+".功能与"w+"同.只是在随后的读写时,可以由位置函数设置读和写的起始位置.
11、"a+".功能与"a"相同;只是在文件尾部添加新的数据后,可以从头开始读.
12、"ab+".功能与"a+"相同;只是在文件尾部添加新数据之后,可以由位置函数设置开始读的起始位置.
参考链接来源:网络-C语言
Ⅶ 如何用C语言创建和删除文件
一、创建文件:
在C语言中创建文件,使用fopen函数,同时指定为只写即可。
参考代码如下:
/*
函数功能:创建文件名为s的文件。
返回值:
-1参数错误
0创建成功
1文件已存在
2创建失败
*/
intcreate_file(char*s)
{
FILE*fp;
if(s==NULL||s[0]=='