Sponsored Content
Full Discussion: fgets problems newline
Top Forums Programming fgets problems newline Post 302470370 by p1cm1n on Wednesday 10th of November 2010 08:00:45 AM
Old 11-10-2010
wow, thx! Smilie great!!

well it isn't really that special i guess. xD
the database file i'm talking about is from the program: "Alienbrain".

Alienbrain (@alienbrain.com):
"Alienbrain is a digital asset management system for artists in the entertainment industry."

Because I couldn't get the SDK working, I decided to do it this way.
(luckily for me all changes are stored in a plain ASCII-file)

i'm not finished yet, but here's the code i've got so far.
(and it is not perfect and not yet minimized)

PHP Code:

/* lib includes */
/**************************************************************************************************/
#include <stdio.h>
#include <stdlib.h>

/* macro definitions */
/**************************************************************************************************/
#define LINE 10240
#define MAXY 20480

/* global vars */
/**************************************************************************************************/
char char_lines[MAXY][LINE];
int int_linecount;

/* searchFileLines */
/**************************************************************************************************/
int searchFileLines( const char *filename, const char *searchstring ) {
    
    
FILE *pFile;
    
char buffer[LINE];
    
    if( ( 
pFile fopenfilename"r" ) ) == NULL ) {
        
fprintfstderr"error: could not open file: %s\n"filename );
        return 
0;
    }
    
    
int_linecount 0;
    while( 
fgetsbuffersizeofbuffer ), pFile ) != NULL ) {
        
        if( 
strchrbuffer'\n' ) == NULL )
            
fprintfstderr"input line too long: %d.\n"int_linecount );
        
        if( 
strstrbuffersearchstring ) != NULL ) {
            
//printf( "%s", buffer );
            
strcpychar_lines[int_linecount], buffer );
        }
        
        
int_linecount++;
    }
    
    return 
1;
}

/* filterFileLines */
/**************************************************************************************************/
void filterFileLines() {
   
//working on it
}

/**************************************************************************************************/
int main( const int argc, const char *argv[] ) { 
    
    
/* 1. check filepath */
    /**************************************************************************/
    
if( argc != ) {
       
printf"dude, you need to give me a filepath!" );
       return( 
);
    }
    
    
/* 2. search file */
    /**************************************************************************/
    
if( !searchFileLinesargv[1], "NxNSignOff_ChangeStatusComment" ) )
        
fprintfstderr"error: could not search file: %s\n"argv[1] );
    
    return 
0;

---------- Post updated at 08:00 AM ---------- Previous update was at 12:38 AM ----------

hey,

it's me again. the above code is not really working.
my global array char_lines does not have the entrys that were found in the file
after the function searchFileLines was called.

i'm guessing because buffer does not longer exists after the function was called.

how can i bypass this problem?
by declaring buffer also as a global var?
Or is there a more elegant solution/approach?
 

10 More Discussions You Might Find Interesting

1. Programming

fgets()

does anyone knows how to accept a command from a user.. i was wondering to use fgets(), but got no idea how to start it... (4 Replies)
Discussion started by: skanky
4 Replies

2. Programming

Problem with fgets and rewind function ..

Hello Friends, I got stuck with fgets () & rewind() function .. Please need help.. Actually I am doing a like, The function should read lines from a txt file until the function is called.. If the data from the txt file ends then it goes to the top and then again when the function is called... (1 Reply)
Discussion started by: user_prady
1 Replies

3. Forum Support Area for Unregistered Users & Account Problems

newline

I have an old file originally created in vi but read and saved by a word processor at some point. I have ^Ms and know how to substitute them for anything I wish but I still only have one long line when viewed in vi. So I suppose I need to substitute a newline for each ^M but I don't know the... (2 Replies)
Discussion started by: Gale Gorman
2 Replies

4. Programming

Question about NULL Character & fgets()

Assume client send the message " Hello ", i get output such as Sent mesg: hello Bytes Sent to Client: 6 bytes_received = recv(clientSockD, data, MAX_DATA, 0); if(bytes_received) { send(clientSockD, data, bytes_received, 0); data = '\0';... (2 Replies)
Discussion started by: f.ben.isaac
2 Replies

5. Programming

[C] fgets problem with SIGINT singlal!!!

Hi all, I have this method to read a string from a STDIN: void readLine(char* inputBuffer){ fgets (inputBuffer, MAX_LINE, stdin); fflush(stdin); /* remove '\n' char from string */ if(strlen(inputBuffer) != 0) inputBuffer = '\0'; } All work fine but if i... (1 Reply)
Discussion started by: hurricane86
1 Replies

6. UNIX for Dummies Questions & Answers

I'm having problems with a simple for loop on a newline

for i in `seq 1 10 ` ; do printf $i '\n'; done gives me this: 1234567891064mbarch ~ $ (output followed by bash prompt) :( I've tried so many ways to create a newline at the end. Does anyone have any ideas.. Thanks in advance. Sorry (7 Replies)
Discussion started by: 64mb
7 Replies

7. Programming

fgets problems

I've been having trouble with reading past the end-of-file in C. Can anyone find my stupid mistake? This is the minimal code needed to cause the error for me: FILE *f = fopen(name, "r"); if (!f) return; pari_sp ltop = avma; char line; while(fgets(line, 1100, f) != NULL) printf(".");... (23 Replies)
Discussion started by: CRGreathouse
23 Replies

8. Programming

fgets read file line with "\n" inside

Hi, I have a string like this, char str ="This, a sample string.\\nThis is the second line, \\n \\n, we will have one blank line"; if I want to use strtok() to seperate the string, which token should I use? I tried "\n", "\\n", either not working. peter (1 Reply)
Discussion started by: laopi
1 Replies

9. Shell Programming and Scripting

echo without newline

I am trying to make a download progress meter with bash and I need to echo a percentage without making a newline and without concatenating to the last output line. The output should replace the last output line in the terminal. This is something you see when wget or curl downloads files.... (6 Replies)
Discussion started by: locoroco
6 Replies

10. Shell Programming and Scripting

Newline in the file

I have requirement to remove the /n ( newline ) characters from the file. When I open file in VI .. I want to see newline char how to display newline char .. or where can I see the content with newline char visible? (3 Replies)
Discussion started by: freakabhi
3 Replies
All times are GMT -4. The time now is 04:52 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy