c語言txt寫入
A. c語言程序設計 將數據寫入指定的txt文件
1.
需要操作制定的文件,首先需要獲取文件的文件描述符(句柄):fd
=
fopen("test.txt","w")
2.
使用fprintf(),或者fputs()函數將數據格式化寫入該文本
#include
main()
{
FILE *f;
f=fopen("wenzhang.txt","w");
fprintf(f,"this is a c program !");
fclose(f);
}
B. 怎樣用C語言寫入\讀取一個TXT文件
如果預知前面的是英文後面的是中文,即可分開:
#include<stdio.h>
#define N 100
void main() { FILE *fp; char s[256],y[N][20],h[N][20]; int i,n;
if ( fp=fopen("c:\data\text.txt","r") ) {
n=0;
while ( !feof(fp) ) {
fgets(s,256,fp); sscanf("%s%s",y[n],h[n]); n++; if ( n>=N ) break;
}
fclose(fp);
printf("英文: "); for ( i=0;i<n;i++ ) printf("%s ",y[i]); printf(" ");
printf("中文: "); for ( i=0;i<n;i++ ) printf("%s ",h[i]); printf(" ");
} else printf("無法打開文件讀取。 ");
}
如果中英文順序不一定,且不會有中英文混合單詞:
#include<stdio.h>
#include<string.h>
#define N 100
void main() { FILE *fp; char s[256],y[N][20],h[N][20]; int i,n;
if ( fp=fopen("c:\data\text.txt","r") ) {
n=0;
while ( !feof(fp) ) {
fgets(s,256,fp); sscanf("%s%s",y[n],h[n]);
if ( y[n][0]<0 ) { strcpy(s,y[n]);strcpy(y[n],h[n]);strcpy(h[n],s); } //漢字字元ASCII碼小於0
n++; if ( n>=N ) break;
}
fclose(fp);
printf("英文: "); for ( i=0;i<n;i++ ) printf("%s ",y[i]); printf(" ");
printf("中文: "); for ( i=0;i<n;i++ ) printf("%s ",h[i]); printf(" ");
} else printf("無法打開文件讀取。 ");
}
C. C語言寫入TXT問題
您好,
#include <STDIO.H>
#include <STDLIB.H>
#include <TIME.H>
void main()
{
FILE *test = fopen("C:\\a.txt","w+");
int i,j;
int c[4][8] ={0};
char temp[10];
srand((unsigned int)(time(NULL)));
for(i=0;i<4;i++)
{
for(j=0;j<8;j++)
{
c[i][j]=rand()%100;
printf("%d ",c[i][j]);
itoa(c[i][j],temp,10);
printf("%s \n ",temp);
fputs(temp,test);
fputc(' ',test);
}
fputs("\r\n",test);
}
fclose(test);
}
D. C語言怎樣將.txt文件中的數據寫入到結構體中去
txt文件中的數據寫入到結構體中去的源代碼如下:
#include<stdio.h>
#include <string.h>
//可以退出的頭文件
#include <stdlib.h>
//結構體的長度
#define DATALEN 15
//函數聲明
//定義結構數組
struct wordUnit{
int id; //id
char word[10]; //詞語
char depId[10]; //依存詞語的id
char pos[10]; //詞性
char depRel[10]; //依存目標的關系
};
int main(){
FILE *data;//要讀取的文件指針
int i=0;//結構題數組移動
struct wordUnit words[DATALEN];
if((data=fopen("data3.txt","r"))==NULL){
printf("Can not open file ");
return 0;
}
while(!feof(data)){
//原txt文檔的數據之間是以空格隔開的
}
fclose(data);
for(int j=0;j<i;j++){
}
return 0;
}
(4)c語言txt寫入擴展閱讀
1、使用關鍵字struct,它表示接下來是一個結構體。
2、後面是一個可選的標志(book),它是用來引用該結構體的快速標記。
E. 用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;
}
(5)c語言txt寫入擴展閱讀:
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語言
F. C語言如何將2.txt文件的內容追加到1.txt文件末尾,並寫入3.txt
int main(){
//以讀的方式打開文件
FILE * fp1 = fopen("1.txt","r");
if(fp1 == NULL)
{
perror("fopen1 error");
exit(-1);
}
//以讀的方式打開文件
FILE * fp2 = fopen("2.txt","r");
if(fp2 == NULL)
{
perror("fopen2 error");
exit(-1);
}
//以寫的方式打開文件
FILE * fp3 = fopen("3.txt","w");
if(fp3 == NULL)
{
perror("fopen3 error");
exit(-1);
}
//初始化3個字元
char ch1 = '0';
while((ch1 = getc(fp1)) != EOF)
{
putc(ch1,fp3);
}
while((ch1 = getc(fp2)) != EOF)
{
putc(ch1,fp3);
}
//關閉文件1,2,3
fclose(fp1);
fclose(fp2);
fclose(fp3);
return 0;
}
G. C語言數據寫入txt
double x ,y ,z;x=y=z=0.0;
FILE *fp;
fp=fopen("C:\\test.txt","w");
while(//循環條件//)
{
fprintf(fp,"%lf %lf %lf\n",x,y,z);
//給x,y,z賦新值//
}
fclose(fp);
H. c語言如何創建一個txt文件並寫入數據
給你個範例吧#include
#include
int
main()
{
FILE
*fp;
char
ch,filename[10];
printf("請輸入要建立的文件的名字:");
scanf("%s",filename);
if((fp=fopen("file1.txt","w"))==NULL)
{
printf("open
file\n");
exit(0);
}
ch=getchar();
printf("請輸入字元(以#結束):");
ch=getchar();
while(ch!='#')
{
fputc(ch,fp);
putchar(ch);
ch=getchar();
}
fclose(fp);
putchar(ch);
return
0;
}
I. C語言如何實現對txt文件的讀取和寫入
使用fopen的r方式可以實現讀取,用w+方式可以實現寫入。
1.fopen的函數原型:FILE
*
fopen(const
char
*
path,const
char
*
mode);
fopen函數的第一個參數是文件路徑,第二個參數是打開方式,有以下幾種方式:
r
以只讀方式打開文件,該文件必須存在。
r+
以可讀寫方式打開文件,該文件必須存在。
rb+
讀寫打開一個二進制文件,允許讀數據。
rw+
讀寫打開一個文本文件,允許讀和寫。
w
打開只寫文件,若文件存在則文件長度清為0,即該文件內容會消失。若文件不存在則建立該文件。
w+
打開可讀寫文件,若文件存在則文件長度清為零,即該文件內容會消失。若文件不存在則建立該文件。
a
以附加的方式打開只寫文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾,即文件原先的內容會被保留。(EOF符保留)
a+
以附加方式打開可讀寫的文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾後,即文件原先的內容會被保留。
(原來的EOF符不保留)
wb
只寫打開或新建一個二進制文件;只允許寫數據。
wb+
讀寫打開或建立一個二進制文件,允許讀和寫。
wt+
讀寫打開或著建立一個文本文件;允許讀寫。
at+
讀寫打開一個文本文件,允許讀或在文本末追加數據。
ab+
讀寫打開一個二進制文件,允許讀或在文件末追加數據。
上述的形態字元串都可以再加一個b字元,如rb、w+b或ab+等組合,加入b
字元用來告訴函數庫打開的文件為二進制文件,而非純文字文件。
返回值:文件順利打開後,指向該流的文件指針就會被返回。如果文件打開失敗則返回NULL,並把錯誤代碼存在errno中。
2.常式:
#include<stdio.h>
#define F_PATH "d:\\myfile\\file.dat"
char c;
int main(){
FILE*fp=NULL;//需要注意
fp=fopen(F_PATH,"w"); //創建文件
if(NULL==fp) return -1;//要返回錯誤代碼
while(scanf("%c",&c)!=EOF) fprintf(fp,"%c",c); //從控制台中讀入並在文本輸出
fclose(fp);
fp=NULL;//需要指向空,否則會指向原打開文件地址
return 0;
}
J. C語言創建TXT文檔並寫入內容
下面所有file模式,如果文件不存在,就創建文件。模式你自己選。另外還有很多其他函數,你自己看書。下面是最基本得的
file
*pfile
=
fopen("d:\\001.txt",
"rb");//以二進制方式打開d盤得001.txt文件
fseek(pfile,0l,seek_end);//將文件指針移動到文件末尾
unsigned
long
buflen
=
ftell(pfile);//獲取文件長度
unsigned
char
*buf
=
new
unsigned
char[buflen];//創建改文件長度大小的一塊內存用來放要讀進來的文件內容
rewind(pfile);//指針移動到文件頭
fread(buf,1,buflen,pfile);//將文件的內容全部讀入buf中
fclose(pfile);//關閉文件
上面為讀文件,下面為寫文件
file
*pfile
2=
fopen("d:\\002.txt",
"wb");//以寫二進制方式打開002.txt文件
fwrite(buf,1,buflen,pfile2);//將buf寫入002.txt
fclose(pfile2);//關閉文件