Fichier CSV

Crapaud - 25 mai 2006 à 15:19
 Crapaud -
Bonjour,

dans le cadre d'un exo, on me demande de mettre des résultats dans un fichier CVS sous forme de couple de valeurs à raison d'un couple par ligne :
val1,val2

Ma question est la suivante comment fait-on pour créer un fichier CVS avec les considérations que je viens d'énoncer?

Merci
A voir également:

9 réponses

crabs Messages postés 909 Statut Membre 507
25 mai 2006 à 18:22
Salut,
CVS ou CSV ?
Si c'est du CSV, le principe est simple en algo :
OUVRIR #output "fichier_resultat.csv" EN ECRITURE;
POUR CHAQUE COUPLE DE VALEUR FAIRE
   ECRIRE #output, PREMIER_NOMBRE ;
   ECRIRE #output, ',' ;
   ECRIRE #output, SECONDE_NOMBRE ;
   ECRIRE #output, FIN_DE_LIGNE
FIN.POUR
FERMER #output

Dans la plus part des langages modernes, il est possible de réaliser les 4
ECRIRE en un seul appel à une fonction système ou appel à un flux.

Si c'est du CVS, alors là c'est plus compliqué à moins d'utiliser directement
les commandes...

A+, crabs
0
lami20j Messages postés 21644 Statut Modérateur, Contributeur sécurité 3 570
25 mai 2006 à 19:08
Salut,

En effet l'algo n'est pas compliqué.
Cependant c'est bien de savoir la structure de données en entrée.
D'ailleurs c'est la 1ère chose qu'il fallait dire.
C'est simple de demander le résultat en sortie, mais depuis quoi?

Dans le cas CSV peut être une simple regex est suffisante.

lami20j
0
Salut,

en faite pour créer un fichier CSV, il faut juste mettre ce qu'on veut séparer par des virgules?

Il n'y a rien de spécial à faire?
0
lami20j Messages postés 21644 Statut Modérateur, Contributeur sécurité 3 570
25 mai 2006 à 20:17
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Salut,

j'ai regardé le lien mais ça ne dit pas comment il faut s'y prendre pour importer et exporter des donnés dans ce format.

Je ne sais pas du tout comment il faut que je fasse.

Un exemple me serait bien utile.

Merci
0
lami20j Messages postés 21644 Statut Modérateur, Contributeur sécurité 3 570
25 mai 2006 à 20:43
Salut,

dans mon message N°2 j'ai écrit

Cependant c'est bien de savoir la structure de données en entrée.
D'ailleurs c'est la 1ère chose qu'il fallait dire.
C'est simple de demander le résultat en sortie, mais depuis quoi?


et tu demandes

Un exemple me serait bien utile.

Alors donne moi les données que je dois traiter.

Tu dis on me demande de mettre des résultats. Alors quels résultats?
Tu dois obtenir ton fichier CSV depuis quelque chose, n'est-ce pas? Pour t'aider c'est de ce quelque chose que j'ai besoin.

Le principe est :


données en entrée -> traitement -> données en sortie


Le traitement et les données en sortie je me débrouille, mais il manque les données en entrée.

lami20j

P.S. j'ai oublié de dire. je le ferai en perl. si tu veux dans un autre langage il faut le préciser.
0
Salut,

alors, c'est un peu compliqué car j'ai plusieurs structures que voici :

/*
  GESTION DES IP
*/
// Structure IP
typedef struct {
  unsigned char x[4];                     // Adresse
} t_ip;


/*
  GESTION DES NOEUDS
*/
// Structure tableau dynamique de noeuds
struct s_noeud;                             // Déclaration type
typedef struct {
    struct s_noeud **elem;                  // Tableau des adresses
  size_t nb;                              // Nb d'éléments réel
  size_t size;                            // Taille allouée
} t_tabNoeud;

// Structure noeud
typedef struct s_noeud {
  t_ip ip;                                // IP dans le noeud
  unsigned short prof;                    // Profondeur du noeud
  struct s_noeud *parent;                 // Adresse père
  t_tabNoeud tabNoeud;                    // Tableau des noeuds fils
} t_noeud;


/*
  GESTION DES ARBRES
*/
// Structure arbre
typedef struct s_arbre {
  t_noeud *racine;                        // Racine arbre
  t_tabNoeud liste;                       // Liste des noeuds de l'arbre
} t_arbre;


Toutes ses structures ont pour but de créer un arbre.
A partir de l'arbre crée, il faut donner les voisins d'un noeud ainsi que toutes les distances minimales depuis la racine.
Toutes les fonctions ont été écrites mais il me faut maintenant mettre les résultats dans un fichier CSV

Il faut exporter (et importer) les données, sous forme de deux fichiers CSV : un contenant la liste des sommets (adresses IP) avec leur distance minimale à la source, et un autre contenant une liste de couples d'adresses IP.

Par exemple avec cet arbre :
      
                                           A
                                         /   \
                                        B     D
                                      /  |    |
                                    C   E     E
                                    |    |    |
                                    D   F     G

Pour les distances auraient le fichier suivant :
A,0
B,1
C,2
D,1
E,2
F,3
G,3

Pour les voisins:
A,B
A,D
...
E,B
E,F
E,D
E,G
....


Je voudrais que ce soit en langage C


Merci par avance
0
Salut,

je rajoute quelques précisions :

"arbre->liste.nb" => c'est le nb de noeuds distincts de l'arbre
"arbre->liste.elem[i]" => c'est l'adresse du "i" ième noeud distinct de l'arbre
"arbre->liste.elem[i]->ip" => c'est son adresse IP
"arbre->liste.elem[i]->prof" => c'est sa profondeur minimale
"arbre->liste.elem[i]->tabNoeud.nb" => c'est le nb de voisins
"arbre->liste.elem[i]->tabNoeud.elem[j]" => c'est l'adresse du "j" ième voisin
"arbre->liste.elem[i]->tabNoeud.elem[j]->ip" => c'est l'IP du "j" ième voisin
0
Bonjour,

est-ce que quelqu'un pourrait m'aider svp?

Merci
0