Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> C /C + + Programming >> Content
Hoe maak je een CSV-bestand lezen in C
Veel software producten die te maken hebben met cijfers en berekeningen hebben de mogelijkheid om data in een Comma Separated Value ( CSV ​​) bestand . Deze indeling kan een effectieve manier van transport van data tussen de verschillende programma's zijn, want het is leesbaar en vrij gemakkelijk te manipuleren . Veel C -programma's die zich bezighouden met de gegevens waarschijnlijk zal moeten lezen uit een CSV-bestand op een bepaald punt . Wat je nodig hebt
tekst editor
Compiler
CSV -bestand ingang
Toon Meer Aanwijzingen
1

Raadpleeg de documentatie van het programma dat is het verstrekken van de CSV bestand . Bepaal het aantal velden in elke lijn , en het formaat van elk veld . Bijvoorbeeld, als een programma biedt een CSV met de volgende gegevens :

1 , " test" , 34,5

Je zou opschrijven drie velden : een integer , een string en een floating point getal . kopen van 2

Maak een structuur met een data- lid voor elk geïdentificeerd in het CSV- gebied . Met behulp van de meegeleverde voorbeeld regel 1 , " test" , 34,5 zou je de volgende structuur nodig:

struct data


{

int
col1 ;

char * col2 ;

float
col3 ;

} ;
3

Maak een methode in uw programma dat zal zich bezighouden met het lezen van het CSV-bestand . Dit zal moeten toegankelijk zijn voor de rest van uw programma te zijn , en zal waarschijnlijk moeten werken aan gemeenschappelijke datastructuren zodat andere methodes van de gegevens die zijn ingelezen Passeer de parameter aan de hand kan de toegang tot de behoefte aan een terugkeer waarde verwijderen . Een voorbeeld functie prototype zou zijn :

nietig ParseCSV
( char * filename , data & input) ;
4

Neem de standaard IO- header met de volgende code :

# include

Voeg deze code aan de bovenkant van het bronbestand dat wordt het lezen van de CSV .
5

Neem de string bibliotheek om manipulatie van de staat CSV gegevens met behulp van de volgende code :

# include

Voeg deze code aan de bovenkant van het bronbestand dat zal het lezen van de CSV
. 6

Maak een bestand object, dat wordt gelezen in de gegevens , met behulp van de volgende code :

fILE
* pInput ;
7

Maak een personage buffer groot genoeg om een ​​te houden regel van het bestand tegelijk . Vanwege beperkingen van de taal , de meest eenvoudige manier om dit te doen is te verklaren een karakter array van een voldoende grote omvang , zoals bij :

# define BUFFER_SIZE 1024

char buf
[ BUFFER_SIZE ] ;
8

Open het bestand met de volgende code , en toewijzen aan uw eerder gemaakte fILE object :

pInput = fopen
( "bestandsnaam ", "r " ) op Twitter
9

lezen in een lijn van het bestand met de volgende code :

fgets
( buf , sizeof ( buf ) , pInput ) op Twitter

Parse 10 het CSV gebruik de functie " strtok " . Maak een nieuwe tekenreeks om te wijzen op de tokens , en het met de gegevens van de lijn te lezen in bovenstaande :

char * tok = strtok ( buf , " , " ) op Twitter 11

Zet de ontvangen token in de juiste data . Met behulp van het voorbeeld regel:

1 , " test" , 3.45

zetten de gegevens in " tok " om een geheel getal met de volgende code :

row.col1 = atoi ( tok ) ;
12

Voor volgende leest uit dezelfde lijn , pass " strtok " a NULL parameter in plaats van de buffer snaar lees je in vóór :

tok = strtok ( NULL , " , " ) op

vervolgens zetten de token om de juiste data type. Met behulp van het voorbeeld lijn

1 , " test" , zou 3.45

De parsing code voor een enkele lijn zijn :

char
* tok = strtok ( buf , " , " ) ;

row.col1 = atoi ( tok ) ;

tok = strtok ( NULL , " , " ) ;

row.col2 = tok ;

tok = strtok ( NULL , " , " ) ;

row.col3 = atof ( tok ) ;
13

Doe dit voor alle vermeldingen op elke lijn van de CSV . De functie " strtok " zal blijven om de gegevens tussen komma waarden geven totdat het loopt uit de gegevens in de buffer , op welk punt het NULL zal terugkeren . Dit geeft aan dat u klaar bent met de lijn .

Previous: Next:
  C /C + + Programming
·Hoe een C programma een Armstr…
·Hoe te Alfabetisch Strings con…
·Hoe een bestand in coderen C #…
·Hoe maak je een C Console toep…
·Hoe kan ik HTML -extensies in …
·Hoe te Videogames verdienen me…
·Verschil tussen C & Visual C 
·Hoe maak je een USB -printer T…
·Hoe te versturen FIFO uitvoer …
  Related Articles
Hoe maak je een Combo Box Maak in Visual…
Hoe maak je een Check Box Maak in Visual…
Hoe maak je een tekstvak maken in Visual…
Hoe maak je een optie Box in Visual Basi…
Hoe maak je een schijf keuzelijst in Vis…
Hoe kan ik een keuzelijst maken in Visua…
Hoe kan ik een Picture Box Maak in Visua…
Hoe een bestand keuzelijst Maak in Visua…
Hoe kan ik een afbeelding Box Maak in Vi…
  Programmering Articles
·Wat is de betekenis van een Data Flow Di…
·Computer System Analysis & Design 
·Hoe te VARCHAR2 Ga naar NCLOB 
·Hoe maak je een PHP- Array Build 
·Common Application Programming Interface…
·Soorten Multitasking in Java Threads 
·Hoe te Cin.Fail maken 
·Visual Basic Fout : Subscript buiten ber…
·Hoe je CSV-bestand lezen in VB 
Copyright © Computer Kennis http://www.nldit.com