求向文本文件中插入字符串 C语言

比如有一个文本文件内容如下
<name>
12345
</name>
需要程序在执行完以后,成为
<name>
12345
54321
</name>
看到有种方法是先读出要插入的位置以后的内容到内存中备份的,具体是怎么实现的呢,麻烦帮忙写段源程序,分少,请好人帮忙,非常感谢!!

第1个回答  2009-04-30
要点:1.打开文件
2.读取12345保存到string字符串变量
3.反转字符串
4.定位到文件尾
5.变量输出到文件
6.关闭文件
至于代码可以根据上面的要点去查看相关的知识点.对你的知识强化有帮助.
第2个回答  2009-04-30
#include <stdio.h>
#include <stdlib.h>

FILE *fin,*fout;
void main()
{
int z;
int c[100];
int i,L;
fin = fopen("a1.txt","r");
fout = fopen("a2.txt","w");
while ( (z = fgetc(fin)) != '>'){
fputc(z,fout);
}
fputc(z,fout);

L= 0;
while ( (z = fgetc(fin)) != '<'){
if (L !=0) fputc(z,fout);
c[L] = z;
L++;
}

L = L - 1;
for (i=L-2;i>0;i--) fputc(c[i],fout);
fputc(z,fout);
while ( (z = fgetc(fin)) != EOF){
fputc(z,fout);
}
fclose(fin); fclose(fout);
printf("output in a2.txt\n");
exit(0);
}本回答被提问者采纳

c语言如何向一个文件中输入字符串
"wb+" 创建一个用于读\/写的二进制文件 "ab+" 打开一个用于读\/写的二进制文件 3.int fputs( const char *str, FILE *stream );fputs()函数把str(字符串)指向的字符写到给出的输出流. 成功时返回非负值, 失败时返回EOF.4.int fclose( FILE *stream );函数fclose()关闭给出的文件流,...

C语言中要在某个文件中追加内容怎么实现
include <stdio.h>#include <string.h>int main(){FILE *fp = fopen("1.txt", "a+");if (fp==0) { printf("can't open file\\n"); return 0;}fseek(fp, 0, SEEK_END);char sz_add[] = "hello world\\n";fwrite(sz_add, strlen(sz_add), 1, fp);fclose(fp);return 0;...

C语言如何在代码中将汉字存入一个已经声明过的字符串?
这个要看字符集,不同字符集对一个字符的定义是不一样的。你可以基本这么认为,你不可能一个字一个字的给汉字赋值,因为一个汉字对应多个字符,你不能拆开来赋值。你只能用strcpy当作字符串来拷贝

C语言怎么将输入函数体的文字写到文本文件里面
主要通过fprintf格式化输出函数实现,测试代码如下,\/\/程序功能,将输入的字符串写入文件中 include <stdio.h> include <stdlib.h> int main(){ FILE *fp=NULL;char str[100];\/\/字符串数组,假定最大输入99个字符 fp=fopen("test.txt","w");\/\/当前路径打开test文件,不存在则创建 if(!fp){ ...

C语言如何将字符串写入文本文件?
从键盘输入一行字符,写入一个文件, 再把该文件内容读出显示在屏幕上。\\x0d\\x0a#include\\x0d\\x0amain()\\x0d\\x0a{\\x0d\\x0aFILE *fp;\\x0d\\x0achar ch;\\x0d\\x0aif((fp=fopen("string","wt+"))==NULL)\\x0d\\x0a{\\x0d\\x0aprintf("Cannot open file strike any key ...

C语言怎么把字符串用fprintf写入文本文件?
把把字符串写入文件,基本示例如下:FILE *fp;char s[]= "hello world!";char c = '\\n';fp = fopen("file.txt","a");fprintf(fp,"%s",s); \/\/字符串使用%s fprintf(fp,"%c",c); \/\/字符使用%cfclose(fp);从文件读取到字符串char s1[30];fp=fopen("file.txt...

C语言里如何把已有的字符串写入文件里?
设要写入的数字是int型,则用控制字符串%d和%s来完成,举例代码行如下:fprintf(fp,"%d %s\\n",12345,"abcdefg");其中:fp是成功写打开文件的指针。此代码行先向文件写入整型数字12345,再加一个空格,接着写入字符串abcdefg,然后写入'\\n'。include "stdio.h"#include "string.h"void main(){...

用c语言写一个程序,实现在字符串的内部增加字符串
\/\/从s1最后一个开始直到第n个字符依次后移 s1[k+j]=s1[k]; \/\/后移j个位置 for(k=0;k<j;k++) \/\/依次把s2内容复制到s1相应位置 s1[k+n]=s2[k];} \/\/完成复制并结束函数 int main(){char str1[99]="

C语言怎么输入一个字符串然后输出txt文件特定一行
include <stdio.h>#include <string.h>#include <stdlib.h>#define MaxSize 100int main(){ int i, num; scanf("%d", &num); FILE *fp = fopen(".\/data.txt", "r+"); \/\/文件名自定 char str[MaxSize], tmp[MaxSize]; while(!feof(fp)) { memset(str...

输入一个字符串,在指定位置插入一个字符的c语言怎么写?
include <string.h> \/\/输入一个字符串,在指定位置插入一个字符的c语言怎么写 void insertCharacter(char a[], int n,char c);void print(char a[]);int main(int argc, const char * argv[]) { char a[100];char c;int n;printf("请输入一个字符串:\\n");gets(a);printf("请输入...

相似回答
大家正在搜