当前位置:首页 » 编程语言 » c语言怎么调用文档里的某行
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言怎么调用文档里的某行

发布时间: 2022-09-19 14:27:02

1. c语言如何读取文本文件中的一行数据啊

用fstream(文件流),fstream
file
然后
file.getline(char*,int,char
a=‘\n’)第一个是一个存储字符串的指针,第二个是要读取的最大长度,第三个是行结束符,默认是回车,函数说明就是当读入的字符超过最大长度int或者遇到行结束符(‘\n’)时就停止,而且这个很好用的(对于读入和写入),你看看文档就会了,哈哈,给分啊。!!~~

2. C语言怎样读取文本的每一行

可以使用fgets函数来实现。

1 函数名:
fgets
2 声明形式:
char *fgets(char *buf, int bufsize, FILE *stream);
3 头文件:
stdio.h

4 功能及参数说明:
从stream中读取一行数据存到buf中。如果数据长度小于bufsize,那么读入整行数据,并将换行符转换为字符串结束符\0。 如果数据长度超过bufsize,那么只读入bufsize大小的数据,并在结尾添加\0。
5 返回值:
成功,则返回第一个参数buf;
在读字符时遇到end-of-file,则eof指示器被设置,如果还没读入任何字符就遇到这种情况,则buf保持原来的内容,返回NULL;
如果发生读入错误,error指示器被设置,返回NULL,buf的值可能被改变。

3. 如何用c语言读取txt文件中的其中一行

#include
"stdio.h"
#include
"string.h"
void
main()
{
int
n;

FILE
*fin;
char
s[25];
fin=fopen("c:\\a.txt","r");
fgets(s,25,fin);/*用fgets读第一行到数组s中*/

n=strlen(s);
fseek(fin,n+1,SEEK_SET);/*将文件指针移到下一行*/
fgets(s,25,fin);/*读取第二行的字符串*/
printf("%s",s);

}
这个是我写的一个,如果你想读到第n行的话,用一个for循环控制使文件指针移到第n行就行了

4. C语言如何读取文件中指定的某一段

#include<stdio.h>

#include<string.h>

#define TBEGIN "B"

#define TEND "END B"

void main() { FILE *fp; char buffer[256];

if ( fp=fopen("c:\test.txt","r") ) {

while ( !feof(fp) ) { fgets(buffer,255,fp); if ( strcmp(buffer,TBEGIN)==0 ) break; }

while ( !feof(fp) ) {

fgets(buffer,255,fp); if ( strcmp(buffer,TEND)==0 ) break; else printf("%s ",buffer);

}

fclose(fp);

} else printf("无法打开文本文件. ");

}

5. c语言怎么实现从文件中读取指定行内容

//假设一行的文本内容不超过1000字符,如果估计超过,请自行修改函数中的1000
//如果打不开文件,返回NULL
//如果文件不足n行,返回NULL
//如果正获得正常数据,返回str的地址
char
*getfileline(char
*p,int
n,
char
*str){
FILE
*fp;
int
i;
if
((fp=fopen(p,"r"))==NULL){
printf("打开文件错误\n");
return
NULL;
}
for(i=1;i<n;i++)

6. C语言中如何将文件中的某行的字符串读取出来

所谓的某行你没有给出确切的定义,通常读文件采用的方法是将文件内容的全部,或者部分保存在缓存中,如果你是想读取第几行,那么就可以使用字符指针,寻找缓存中的'\n',并进行计数,找到想要的行。
如果想读取的是某个关键字所在的行,同样是可以使用字符指针,使用strncmp方法寻找关键字所在的位置,或者直接使用strstr方法查找。
需求不明确的时候不容易确定最佳的查找方式。

7. C语言 怎么用fgets()读取一个txt文件中的任意行的信息

  1. 首先定义文件指针 fp=fopen("文件名称","r");
    然后用fseek()设置文件指针的位置;
    最后用fgets()得到行信息;

  2. int fseek(FILE *stream, long offset, int fromwhere);函数设置文件指针stream的位置。如果执行成功,stream将指向以fromwhere为基准,偏移offset(指针偏移量)个字节的位置,函数返回0。如果执行失败(比如offset超过文件自身大小),则不改变stream指向的位置,函数返回一个非0值。

  3. fgets()函数原型
    char *fgets(char *buf, int bufsize, FILE *stream);
    参数
    *buf: 字符型指针,指向用来存储所得数据的地址。
    bufsize: 整型数据,指明存储数据的大小。
    *stream: 文件结构体指针,将要读取的文件流。

8. c语言怎么实现从文件中读取指定行内容

//假设一行的文本内容不超过1000字符,如果估计超过,请自行修改函数中的1000
//如果打不开文件,返回NULL
//如果文件不足n行,返回NULL
//如果正获得正常数据,返回str的地址
char *getfileline(char *p,int n, char *str){
FILE *fp;
int i;
if ((fp=fopen(p,"r"))==NULL){
printf("打开文件错误\n");
return NULL;
}
for(i=1;i<n;i++)

9. C语言怎么读取txt文件中一行的数据

  1. 打开文件 fopen("需要打开的路径")

  2. 然后使用fgets函数读取行

  3. #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>
    #defineMAX_LINE1024
    intmain()
    {
    charbuf[MAX_LINE];/*缓冲区*/
    FILE*fp;/*文件指针*/
    intlen;/*行字符个数*/
    if((fp=fopen("test.txt","r"))==NULL)
    {
    perror("failtoread");
    exit(1);
    }
    while(fgets(buf,MAX_LINE,fp)!=NULL)
    {
    len=strlen(buf);
    buf[len-1]='';/*去掉换行符*/
    printf("%s%d ",buf,len-1);
    }
    return0;
    }

10. C语言读取指定行数据

#include<stdio.h>
#defineMAXC1024
intReadSpeacialLine(inti)
{
charfilename[]="test.c";//文件名
FILE*fp;
intret=0,L;
intWhichLine=i;//指定要读取哪一行
intCurrentIndex=0;//当前读取的行
charStrLine[MAXC];//每行最大读取的字符数,可据实际情况更改
if((fp=fopen(filename,"r"))==NULL)//打开文件
{
printf("openfileerror! ");
returnret;
}
while(1){
if(NULL==fgets(StrLine,MAXC,fp))break;
L=strlen(StrLine);
if(' '==StrLine[L-1]){
memset(ln+L-1,0,MAXC-L+1);
CurrentIndex++;
if(WhichLine==CurrentIndex)
{
fgets(StrLine,MAXC,fp);//读取一行
printf("%s",StrLine);//输出
ret=1;
returnret;
}
}
else{//行内容太多StrLine会读不到行结尾的情况
CurrentIndex++;
if(WhichLine==CurrentIndex)
{
fgets(StrLine,MAXC,fp);//读取一行
printf("%s",StrLine);//输出
ret=1;
returnret;
}
while(1){
if(NULL==fgets(StrLine,MAXC,fp))gotoEND;
L=strlen(ln);
if(' '==ln[L-1])break;
}
}
}
end:
fclose(fp);//关闭文件
returnret;
}

使用fgets函数,fgets是每次读取一行。

使用memset来清除StrLine,防止上一次StrLine中的内容未清除。

满意请采纳,不懂请追问。