怎么用C语言读取 TXT文件中的字符串

如读取>名字</>jordan</名字jordan... 如读取
>名字</
>jordan</
名字
jordan
展开
 我来答
Du错错错

推荐于2017-09-06 · 知道行家,感谢您的关注。
Du错错错
采纳数:871 获赞数:7278

向TA提问 私信TA
展开全部

可以使用输入输出重定向来将TXT文本中的字符内容导入程序中,或者使用标准C库函数:fopen()和fgetc();
先使用fopen()函数打开TXT文本文件,然后使用fgetc读取文本文件中的字符。读取全部文本中全部字符可以使用一个while循环加判断是否读取到文件结尾来实现:
char ch;
while((ch= fgetc(fp)) != EOF)

这样当读取到文件结尾时,while循环就会终止。

C语文编写编译如下:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAXLINE 100000
#define BUFLEN  1024
int main()
{
FILE *file;
char buf[BUFLEN];
int len=0,i=0;
char *array[MAXLINE];

file=fopen("test.txt","r");//打开TXST.TxT文件
if(!file)return -1;
while(fgets(buf,BUFLEN,file))//读取TXT中字符
{
 len=strlen(buf);
 array[i]=(char*)malloc(len+1);
 if(!array[i])break;
 strcpy(array[i++],buf);
}

fclose(file);
i--;
while(i>=0&&array[i])
{
 printf("%s\n",array[i]);//打印test文档的字符
 free(array[i--]);
}
}
滟丽00
高粉答主

2019-05-11 · 繁杂信息太多,你要学会辨别
知道答主
回答量:1487
采纳率:0%
帮助的人:23.7万
展开全部

1、首先我们打开电脑里的VS软件,使用VS新建空工程,直接点击确定。

2、然后我们点击界面上方新建选项,再点击添加选项再点击新建项进行文件添加。

3、新建c文件,用于C语言编译器,输入main.c文件。

4、然后我们在文件中输入图示代码。

5、编译完成后,运行exe程序,执行后显示console程序即可发现此时显示出了txt读取的信息。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lijiachengasd
推荐于2017-09-11 · TA获得超过628个赞
知道小有建树答主
回答量:509
采纳率:100%
帮助的人:136万
展开全部

学文件指针了没?

#include <stdilo.h>
int main(void)
{
    FILE *p;
    p = fopen("a.txt", "r");       //前提是你要在你的工作目录里有一个有内容的a.txt文件,自己创建一下吧,写两句(不要整汉语哈)。
    while(!feof(p))
    {
        putchar(fgetc(p));
    }
    fclose(p);
    return 0;
}
更多追问追答
追问
学了,就是想读出TXT文件中的 特定字符串中的 信息,例如>john</,中的john
追答
#include <stdilo.h>
int main(void)
{
    FILE *p;
    p = fopen("a.txt", "r");    
    while(!feof(p))
    {
if(fgetc(p) == '>')
{
while(fgetc(p) != '<')
{
putchar(fgetc(p));
}
return 0;
}
    }
    fclose(p);
    return 0;
}

试试吧 ,我没编译直接写的

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2015-01-25
展开全部
#include<stdio.h>
#include<conio.h>
int main()
{
    char c[100];
    FILE *p1=fopen("x.txt","r");
    if(!p1)
        printf("打开失败\n");
    for(i=0;i<100;i++)
    {
        fscanf(p1,"%c",&c[i]);
        printf("%c",c[i]);
    }
    putchar('\n');
    fclose(p1);
    p1=0;
    return 0;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式