什么方法将指定的字符串写入文件当前插入位置

什么方法将指定的字符串写入文件当前插入位置,第1张

file对象write写入字符串。

字符串是一种面向对象、解释型计算机程序设计语言先读取file文件中所有内容,然后在对改内write容进行处理,最后在写入到文件中。

字符串由GuidovanRossum于1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块尤其是CCHIZ很轻松地联结在一起。

file对象write用法常见的一种应用情形是,使用Python快速生成程序的原型,有时甚至是程序的最终界面,然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用CCHIZ重写。

不能用a+,用a模式时,每次写入数据时系统都会自动将读写位置跳到文件结尾,确保已经存在的数据不会被修改。

修改如下:

//---------------------------------------------------------------------------

#include<stdio.h>

#include

<stdlib.h>

char

*

read(FILE

*fp)

/*注意这里,将fp文件中的剩余部分读取到一个字符数组中,并返回数组地址*/

{

char

c,*t=NULL

int

i=0

t=malloc(sizeof(char))

while

((c=fgetc(fp))!=EOF)

{

t[i++]=c

t=realloc(t,sizeof(char)*(i+1))

}

if

(i)

t[i]='\0'

else

{

free(t)

t=NULL

}

return

t

}

void

write(FILE

*fp,const

char

*t)/*注意这里,将read()函数读取的内容写入fp文件中的当前读写位置*/

{

int

i

for

(i

=

0

t[i]

i++)

{

fputc(t[i],fp)

}

free(t)

}

void

main()

{

int

i

char

c

char

*t

/*注意这里*/

FILE

*fp

fpos_t

ps

/*注意这里,用于记录文件的读写位置*/

fp=fopen("E:/te.txt","r+")

while

((c=fgetc(fp))!=EOF)

/*注意这里*/

{

if

(c=='

')

{

fgetpos(fp,&ps)

/*注意这里*/

t=read(fp)

/*注意这里*/

fsetpos(fp,&ps)

/*注意这里*/

fseek(fp,-1*sizeof(c),SEEK_CUR)

/*注意这里*/

for(i=0i<12i++)

fputc('\t',fp)

/*注意这里*/

fgetpos(fp,&ps)

/*注意这里*/

write(fp,t)

/*注意这里*/

fsetpos(fp,&ps)

/*注意这里*/

}

}

fclose(fp)

}

//---------------------------------------------------------------------------

1、C语言标准库提供了一系列文件 *** 作函数。文件 *** 作函数一般以f+单词的形式来命名(f是file的简写),其声明位于stdio.h头文件当中。例如:fopen、fclose函数用于文件打开与关闭;fscanf、fgets函数用于文件读取;fprintf、fputs函数用于文件写入;ftell、fseek函数用于文件 *** 作位置的获取与设置。一般的C语言教程都有文件 *** 作一章,可以找本教材进一步学习。2、例程:

#include<stdio.h>int achar b,c[100]int main(){FILE * fp1 = fopen("input.ini", "r")//打开输入文件FILE * fp2 = fopen("output.ini", "w")//打开输出文件if (fp1==NULL || fp2==NULL) {//若打开文件失败则退出puts("不能打开文件!") rturn 0 }fscanf(fp1,"%d",&a)//从输入文件读取一个整数b=fgetc(fp1)//从输入文件读取一个字符fgets(c,100,fp1)//从输入文件读取一行字符串 printf("%ld",ftell(fp1))//输出fp1指针当前位置相对于文件首的偏移字节数 fputs(c,fp2)//向输出文件写入一行字符串fputc(b,fp2)//向输出文件写入一个字符fprintf(fp2,"%d",a)//向输出文件写入一个整数 fclose(fp1)//关闭输入文件fclose(fp2)//关闭输出文件,相当于保存return 0}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11853201.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存