🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #17457

file lezen en schrijven

#17457
From: Bart Vandewoestyne
Date: Thu, 16 Dec 1999 00:00
96 lines
3050 bytes
Ik wil een applicatie schrijven die een XY-grafiek maakt.  In een file
moet ik de X en Y waarden bijhouden.  Kan iemand mij zeggen hoe ik best
die X en Y waarden in de file schrijf en terug uitlees?  Of gebruik ik
beter twee aparte files ?
Ik heb al zitten experimenteren en ben iets merkwaardigs tegengekomen...
Bekijk eerst dit programma:

#include <stdio.h>
#include <stdlib.h>
 
int mot_write_xydata(void)
{
  int i=0;
  
  FILE *fp;
  
  fp = fopen("xydata1", "w");
  for (i=0; i<=10; i++)
    fprintf(fp, "%d\n", i);		// schrijven lukt zonder problemen
  fclose(fp);
  
  fp = fopen("xydata1", "r");
  while (fscanf(fp, "%d\n", &i)==1)	// lezen lukt ook zonder problemen
    printf("%d\n", i);
  fclose(fp);
  return (0);
}

int main(void)
{
 mot_write_xydata();
 return(0);
}


Dit programma schijft netjes een paar integer waarden in een file, en
leest die netjes terug uit en zet die netjes op het scherm.

Bekijk nu volgend programma, dat X _EN_ Y data zou moeten lezen:

#include <stdio.h>
#include <stdlib.h>
 
int mot_write_xydata(void)
{
  int i=0;
  int motor_data;
  
  FILE *fp;

  fp = fopen("xydata1", "w");
  for (i=0; i<=10; i++)
    fprintf(fp, "%d\n%d\n", i, (int)(rand()/(RAND_MAX/214.7483674))); 
// schrijven is OK
  fclose(fp);
  
  fp = fopen("xydata1", "r");
  while (fscanf(fp, "%d\n%d\n", &i, &motor_data)==1)   // hier gaat
blijkbaar iets fout, maar wat ???
    printf("%d\n", motor_data);
  fclose(fp);
  return (0);
}

int main(void)
{
 mot_write_xydata();
 return(0);
}

In dit laatste programma lukt het me dus niet om de waarden uit de file
te lezen.  Ik probeer dus de X en Y data weg te schrijven in een file
als volgt:

x1
y1
x2
y2
enzoverder...

maar uitlezen lukt me niet...
Iemand die weet waaraan dit ligt ???

Alvast bedankt!
Bart

-- 
Bart Vandewoestyne		http://hello.to/MC303		
Hugo Verrieststraat 48		Bart.Vandewoestyne@skynet.be
8550 ZWEVEGEM			ICQ# 21275340
BELGIUM - EUROPE		nick: MC303
Phone: +32(0)56/75.48.11
-------------------------------------------------------------------
If carpenters made buildings the way programmers make programs, the 
first woodpecker to come along would destroy all of civilization.
				- Weinberg's Second Law -
Technical Details
Message-ID: <3859371D.5C47C8FC@skynet.be>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit
X-Google-Thread: 107324,c9f772b3ffe88dca,start
X-Google-Attributes: gid107324,public
X-Google-Thread: fcea4,c9f772b3ffe88dca,start
X-Google-Attributes: gidfcea4,public
From: Bart Vandewoestyne <Bart.Vandewoestyne@skynet.be>
Subject: file lezen en schrijven
Date: 1999/12/16
Message-ID: <3859371D.5C47C8FC@skynet.be>
X-Deja-AN: 561630408
Content-Transfer-Encoding: 7bit
X-Accept-Language: nl-BE, nl, en, de
Content-Type: text/plain; charset=us-ascii
X-Complaints-To: abuse@skynet.be
X-Trace: news1.skynet.be 945371034 9782 195.238.12.170 (16 Dec 1999 19:03:54 GMT)
Organization: MyHome
Mime-Version: 1.0
NNTP-Posting-Date: 16 Dec 1999 19:03:54 GMT
Newsgroups: be.comp.programming,nl.comp.programmeren