Skip to main content

Reading file in C


void readLine()
{
    FILE *fpTest;
    fpTest = fopen ( "test.txt", "r" );
    int countRead = 0,countLine = 0,countCodeDataLine = 0,length = 0;
    if(fpTest ==NULL){
        printf("error in opening test.txt file" ); // perror
        exit(0);
    }
   
   
    while( !feof(fpTest)    )
    {
        fgets ( line, MAXATTRLINELEN, fpTest );
        countRead++;
        length = strlen(line);
        printf("[%d]:%s(lineLength=%d) \n",countLine,line,length);
       
        if(length > 0)
        {
            countLine++;
        }
       
        // count countCodeDataLine
        if(length == 0) ;
        else if(length ==1)
        {
            //printf(" %d  %d %d %d %d",line[0], '\n', '\r' , '\r\n', '\n\r');
            if(line[0]==' ' || line[0] == '\n'  || line[0] == '\t' ) ;
            else
                countCodeDataLine++;
        }else
        {
            countCodeDataLine++;   
        }
       
        line[0] = '\0';
       

    }
   
   
    printf(" Read %d . Line  %d . Dataline  %d\n",countRead, countLine,countCodeDataLine);

    fclose ( fpTest );
   
}

Comments

Popular posts from this blog

MATLAB cross validation

// use built-in function samplesize = size( matrix , 1); c = cvpartition(samplesize,  'kfold' , k); % return the indexes on each fold ///// output in matlab console K-fold cross validation partition              N: 10    NumTestSets: 4      TrainSize: 8  7  7  8       TestSize: 2  3  3  2 ////////////////////// for i=1 : k    trainIdxs = find(training(c,i) ); %training(c,i);  // 1 means in train , 0 means in test    testInxs  = find(test(c,i)       ); % test(c,i);       // 1 means in test , 0 means in train    trainMatrix = matrix (  matrix(trainIdxs ), : );    testMatrix  = matrix (  matrix(testIdxs  ), : ); end //// now calculate performance %%  calculate performance of a partition     selectedKfoldSen=[];selectedKfoldSpe=[];selectedKfoldAcc=[];     indexSen=1;indexSpe=1;indexAcc=1;     if ( kfold == (P+N) )% leave one out         sensitivity = sum(cvtp) /( sum(cvtp) + sum(cvfn) )         specificity = sum(cvtn) /( sum(cvfp) + sum(cvtn) )         acc

R tutorial

Install R in linux ============ In CRAN home page, the latest version is not available. So, in fedora, Open the terminal yum list R  --> To check the latest available version of r yum install R --> install R version yum update R --> update current version to latest one 0 find help ============ ?exact topic name (  i.e.   ?mean ) 0.0 INSTALL 3rd party package  ==================== install.packages('mvtnorm' , dependencies = TRUE , lib='/home/alamt/myRlibrary/')   #  install new package BED file parsing (Always use read.delim it is the best) library(MASS) #library(ggplot2) dirRoot="D:/research/F5shortRNA/TestRIKEN/Rscripts/" dirData="D:/research/F5shortRNA/TestRIKEN/" setwd(dirRoot) getwd() myBed="test.bed" fnmBed=paste(dirData, myBed, sep="") # ccdsHh19.bed   tmp.bed ## Read bed use read.delim - it is the  best mybed=read.delim(fnmBed, header = FALSE, sep = "\t", quote = &q