Problme programmation c++

Pages: [1]

luciole

  • Membre
  • 2315 posts
27 dcembre 2012, 19:41
Bon alors voila j'ai un souci avec un programme.
Il est cens lire du texte dans un fichier "dump.txt" et le rcrire dans un fichier "change.xml"
Tout marche trs bien mis part que lors de la capture du texte et la rcriture ma boucle merde au bout de 37 tours environ :/ Je comprend pas pourquoi.
Voila le contenu de "dump.txt"
dump.txt
Evoli      -dEs1[4 Q' 0@!        3   Aquali     -r]"I|r{XPb'xū!           Voltali    -\I|[\Pc'x!        X   Pyroli     -\I   r;.TPa'x+"        ;   Mentali    -P!I   }?8XQF+ x+1        8   Noctali    -,QIscttPF? xk1           Phyllali   -HI3a8P^ xūu        c   Givrali    -DI   EsP[ xu        H   Tarsal     dE_Q74XQ8 F          Kirlia     xDI|K4XQ,H@F       [   Gardevoir  -DMR
S4@QKxūF        C   Gallame    -IR
LĬPixv        @   Magicarpe  dI<Q
0Q
P@       m   Leviator   -,E*Qr
"uLPxū       Q   Pichu      dAK Q' X +          Pikachu    PEi,  dP2 `@          Raichu     K\I,  8dPcxū           Axoloto    d"E7,1e0XXP
h0         Maraiste   Z,A"IlcXXP^x0         Toudoudou  "eAA0I@Qp+       U   Rondoudou  ZTQ&E_I@Q2x          W   Grodoudou  2].I/I@Qex+
           Nosferapti dI_<1'):$P'@
a     Nosferalto ZMMT 'N$P7'
  `    J   Nostenfer  ZQM'Z$PA'xk*        "   Etourmi    dEs z Q' c   D     Etourvol   xLI|Q
 )Lz Q0'@c         Etouraptor -EN 1LzQ\'xūc           Keunotor   dI_T1FX4P c        Castorno   x EI1   @$FX4P'x+d          Venipatte  d"E_q<P  `      Scobolide  xHIs2<P2   `       Brutapode  -LQR <Q9xk           Lixy       dEU$L Q'd          Luxio      xDILQ# e       h   Luxray     -ENÌ   LlQ_xke        i   Funecire   dAт-4!*P    f   Melancolux ZD"E1-@!*PT      _   Lugulabre  -\I'R
-H!*Pgxk           Nodulithe  d"E1o xLQ     0      Geolithe   xHUTw xLQ;@           Gigalithe  -!T5s{ xLQxū        G   Chlorobule dErP 0         Fragilady  K\IlrPfxk 0      e   Wattouat   dEd (Q,       n   Lainergie  xD.I (Q5 -       :   Pharamp    -"EI2 @QZxk-           Doudouvet  dEȎ:tP'  0          Farfaduvet K\I:tPf'x           Riolu      KdET6lQ!o          Lucario    -PID 6lQ2x+p        g   Korillon   xd!7  R"Al          Eoko      -PElrK  R2xūY          Abo        d"I}1Ln4Q#  ` 0 4   Arbok      ZDTdR
Ln4Q;x+  `        Pomdepik   dE2_ <LQ$ 3          Foretress  KII4S  <LQIxk3        <   Miaouss    dE_< HQ%(
      o   Persian    ZLI+tQ`xk
          Obalie     d"IsqE,8P&0Z@      Phogleur   x"AIDE,8P'8[         Kaimorse   -JAUrE#8Pxk[           Scrutella  dEs74tP(@       K   Mesmerella dH"I|2?4(QF)H       M   Siderella  2H"MDsW4(Qjx+        L   Mascaiman  d"E,qL Q*P    `     Escroco    ZDJ|   LpQP+X    `  \   Crocorible -,EMD LpQnxk        ]   Skelenox   dIUr  R,`X     2   Teraclope  ZHM$tM\Qh-hY      0   Noctunoir  -MLM\Qxkw        1   Munna      e"QC,4pP.pA       x   Mushana    KV]   GJ,Qexū       y   Zebibron   dI}   0Q'/x          Zeblitz    KML 0lQQx          Minidraco  dd"Ei78<Q0$      ,   Draco      -DI,   78P<1%        )   Dracolosse -$ELS
. Pxk%        *   Embrylex   ddEq q2P Q2=   0   b   Ymphect    -DID u7<QJ3=   0      Tyranocif  -6EM]yMFPx+>           Terhal     dEsDPxQ4 ]           Metang     HIPxQ@5]        q   Metalosse  EU   PxPox+^        p   Griknot    -d"EU|28P6n        F   Carmache   -DI
26 Q,7o        ?   Carchacrok -FEL   
@6Pxko        B   Cradopaud  dETtpQ8Aq        !   Coatox     KE"I
tPQxūq           Solochi    dd"I_ϕ=RP9A     L  &   Diamat     -DMD=R QH:Н     L     Trioxhydre -&EL ϡ  Rx        T   Stalgamin  d"Ei Q;AZ         Oniglali   KALR
PxūZ       I   Momartik   KID:Pixūw        >   Chinchidou d&EiT   O4@Q=   D  s   Pashmilla  <]I4@Qhxk          Machoc     dId(P>       l   Machopeur  ZEM(PV?       k   Mackogneur -"!M   2(Px+        j   Charpenti  eE|PP@           Ouvrifier  ZEI,RPPQAB       P   Betochef   -@!UPPxū           Polarhume  xd"E}TQ@<QBB      #   Polagriffe <,EMᔒ@F4QIxū      
   Moustillon d"E|g%lPCB}       {   Mateloutre nEIs%lP6D }       '   Clamiral   -,EU|   w%Qhx}           Salameche  dE}q7$^P'E(          Reptincel  nDIQ
;$^P2F0B          Dracaufeu  -
ELߜ !M$zPSxū           Fantominus dIQ
  R'G8  A  D   Spectrum   ZDM1   RcH@B  @   R   Ectoplasma - M   -  Rxū        E   Ouisticram dEyt7$P'IHa          Chimpenfeu nLIq
<$P0JPa      v   Simiabraz  -MML
H$Qfx+b        V   Vipelierre dE_1&pP'KX{           Lianaja    nLI}l
&pP6'L`|           Majaspic   -M.M s&Phxk|           Gruikui    dE_|7$\ QMh|          Grotichon  n"E
I1D$\ Q)Np|         Roitiflam  -JEMrT$\|Qsx+}        5   Larveyette dAU\DPOx 0        Couverdure xHEiDQ<PB 0        Manternel  -QIl d9N@QAxū        d   Abra        d6   , ;jXQ'Q           Kadabra    dD"Iq?jhPSR       Z   Alakazam   2 MRSjHPxk           Arcko      dE|   &pP'S? 0         Massko     nLI1 &lP:T B? 0      O   Jungko     -LLlR&lQvxū?           Tiplouf    d"EQc%PUBb          Prinplouf  nD"ITk%P3Vb          Pingoleon  -ELz%Pfxb        7   Feuillajou dEoQ:r QW        }   Feuiloutan K].I :zpPdx+           Flamajou   d"EoQC: QXB        ~   Flamoutan  K]"I _:8|Qaxū           Flotajou   d"EoQg:tPY€        |   Flotoutan  K]I o:8Qbx+           Darumarond xdE|?a\ QZЂ       %   Darumacho  <@EI1 W=\Qnx        $   Coupenotte dd"Eq84Q[؂          Incisache  <DI64Qq\˜       =   Tranchodon -E.N+r RPx+        S   Statitik   dAwqkEP']”      Y   Mygavolt   KL.M
kEPTx+      A   Galekid    dID xQ^L    0     Galegon    ZHQ S xQS_BL    0  ^   Galeking   -HQԓ xQxūL           Rototaupe  xd:Edш2lP` C       /   Minotaupe  <JE2IR"2Qaxū      9   Zorua      KdETqTtpQ'a           Zoroark    -D.Mq
TRhQZ'x           Rapion     xdIiTrg   
Qbp  `       Drascore   -HP2 
QZx+q  `  @  +   Scalpion   xdEHPc    `    Scalproie  -DM   HPvxk           Rhinocorne xeMrxxPd    0      Rhinoferos <@EM   R!xxPle(   0      Rhinastoc  TUR}x$Pwx+t           Dinoclier  -dEYL e|0Pf0f          Bastiodon  -HMm ve|0Pqxf           Baggiguane dEDRϰ7pQg8Ë  `     Baggaid    ZH
I7PVx+    `     Baudrive   }"eE}L-Q'h@Cj        .   Grodrive   <AIQ
-Qxūj        -   Furaiglon  dE )R Q'iHÜ          Gueriaigle <6E:MlR
 -RPw'x+           Anorith    -dUä   la
<pPjPV           Armaldo    -ELle
<lPtx+W           Pyronille  -dI+<!PkX      a   Pyrax      EM +P!Pxk           Onix       -dP_D    q <4Ql`   0   z   Steelix    )Q4 <4Q{x+4         Dardargnan -d"I   hAPx  @       Goinfrex   d|eE 6Z8Pmho       w   Ronflex    QM#, 8P2x#          Emolga     dE1
# 8 Q'x        6   Farfuret   <dIPnp5           Dimoret    -IlhQxks           Feuforeve  -dET
  Rox2       t   Magireve   -\Hפr
  Rgxkk        u   Nanmeouie  d<eI}Ē5pPx       
   Vortente   eIT  Rxq 0         Spiritomb  ddItN\Qxūn     A     Insecateur -dMr
+a'6Qp         Cizayox    M   r f'6P{x+5         Locklass   -reL XPx       `   Terrakium  $eQM+ Rx           Artikodin  "eMÔJ%" Rx+$              Registeel  eMĔF Rx^           Groudon    6eQ1K'3 Rx_        N   Dialga     6eT1KЩ# Rxx        (   Mewtwo     BeM9P[5 R'xū%        r   Reshiram   -6eR1K.X Rx            Zekrom     -6eR1Kn Rx+           Arceus     ^eSO3U R'xk{           Rayquaza   EeR6.B R'x+`              AD
84  <$ lD  jD ,!q      

 "#%&()+-.02468:<=?@BCEFHJLMOPRSUVXZ[]^`bcefhjkmnpqstvwyz|}

et voici mon code:
code C++
#include <iostream>
#include <string>
#include <fstream>

using namespace std;

int main()
{
    ofstream fichierXml("change.xml",ios::app);
    ifstream fichierDump("dump.txt");
    //Ouvre les deux fichiers (change.xml en lecture/ecriture et dumpt.txt en lecture uniquement.
    string ligne[30];


    if(fichierXml && fichierDump) //Teste l'ouverture des fichiers.
    {
        fichierXml << "<?xml version=\"1.0\" encoding=\"utf-8\"?>" << endl;
        fichierXml << "<fichier>" << endl;
        //Insere dans les balises dans le .xml

        for(int i(0); i < 60; i++)//Lit le fichier dump.txt et crit dans change.xml.
        {
            fichierXml << "    <ligne ID=\"" << i << "\">" << endl;
            fichierDump >> ligne[i];
            fichierXml << "        " << ligne[i] << endl;
            fichierXml << "    </ligne>" << endl;
            i++;
        }
        fichierXml << "</fichier>" << endl;
    }
    else //Si il y a erreur lors de l'ouverture des fichiers.
    {
        cout << "Erreur lors de l'ouverture des fichiers." << endl;
    }

    return 0;
}


Une fois lanc il plante 30 et le xml donne a: http://up.levert.ch/466b4f-Sans_titre.png

Si vous pouvez m'aider :/
« Modifi: 27 dcembre 2012, 20:10 par luciole »

Morsula

  • Membre
  • 4745 posts
27 dcembre 2012, 19:58
Le compilateur t'affiche quoi plus exactement comme message ?

luciole

  • Membre
  • 2315 posts
27 dcembre 2012, 20:05
Le compilateur le compile normalement et lors du lancement au bout de quelques secondes j'ai a:


puis quand je quitte le message de la fentre donne a:

Morsula

  • Membre
  • 4745 posts
27 dcembre 2012, 21:32
Bon, je t'avoue que j'ai essay de faire quelques recherches en utilisant Qt mais je ne comprends pas l'erreur, le compilateur n'est pas franchement clair :-\

Ton fichier dump.txt tu le tires d'o ?

valentin buck

  • Membre
  • 20862 posts
27 dcembre 2012, 23:40
tg et va sur le sdz

Morsula

  • Membre
  • 4745 posts
27 dcembre 2012, 23:44
Ah mais du coup ton programme il ne parcourt qye 60 lignes ? C'est la structure du fichier texte que je trouve bizarre :)

luciole

  • Membre
  • 2315 posts
28 dcembre 2012, 01:37
tg et va sur le sdz
Tu crois que je vais o x) ?
Ben en fait le fichier dump.txt pourrai tre n'importe quel autre fichier c'est juste que j'ai pris celui l pour tester.
Citation de: Morsula
Ah mais du coup ton programme il ne parcourt qye 60 lignes ? C'est la structure du fichier texte que je trouve bizarre  :)
Si on change la dure du for ( dans le genre for (int i(0); i < 1560; i++)) ou mme en mettant la place while (i < 1560) et un i++ dans la boucle sa bug toujours au mme endroit :/

Le fichier dump.txt c'est pour une traduction. Lorsqu'on utilise une table traduire via l'hditeur hexa c'est pas confortable et ils ne peuvent que l'exporter sous ce genre de forme :/
Donc j'essaye de creer un truc pour pouvoir mettre tout sa en xml (et vice-versa aprs) qui est beaucoup mieux pour bosser.

luciole

  • Membre
  • 2315 posts
29 dcembre 2012, 18:01
En fait c'est tout con...
j'ai sa: string ligne[30] et for(int i(0); i < 40; i++).
Ensuite comme je stocke mon texte dans ligne, une fois arriv i = 30 il est arriv au bout de mon tableau. Je peux plus rien stocker. Il fallais juste que je change la taille du tableau :fail:

Morsula

  • Membre
  • 4745 posts
29 dcembre 2012, 19:04
Putain.

En plus j'avais essay de voir justement en changeant la taille du tableau mais je ne suis pas all au bout de mon truc. J'avais essay avec string ligne[] mais manifestement en C++ les tableaux ne s'ajustent pas automatiquement. La pratique de JavaScript a mdr

En tous cas gg ;)

Weby

  • Membre
  • 56564 posts

Edualc

  • Membre
  • 7361 posts
31 dcembre 2012, 06:27
Pourquoi s'emmerder avec du C++ pour ce genre de truc aussi. Dsol pour le troll, mais bon...

luciole

  • Membre
  • 2315 posts
31 dcembre 2012, 10:54
Pourquoi s'emmerder avec du C++ pour ce genre de truc aussi. Dsol pour le troll, mais bon...
Je souhaite faire quelque chose mais je sais faire du C/C++ (et encore j'ai un peu de mal parfois vu que j'ai pas fini les cours) donc j'ai utilis ce que je savais.
Pourquoi qu'est-ce que tu aurais utilis ?

Edualc

  • Membre
  • 7361 posts
31 dcembre 2012, 14:21
N'importe quel langage de script de plus haut niveau qui simplifie mort la manipulation des fichiers textes. En tant que pythoniste, j'aurais dit python., mais du perl aussi aurait t cool, ou du php pourquoi pas. Avec quelques regex <3.

Rouge Chimre

  • Membre
  • 2275 posts
31 dcembre 2012, 16:00
Le meilleur langage c'est le C# donc bon, mais si tu cherches un jour de l'aide dans ce langage voir le VB.NET ou encore le JAVA fait moi signe.

mimich`

  • Invit
31 dcembre 2012, 16:11
Je suppose que c'est le fichier contenant les nom des pokmon dans pokmon conquest.
File leurs le(s) .dat du(des) fichier(s) ce sera surement mieux.
Et le but ce serai qu'il soi excutable direct sur windows sans installer autre chose en plus.


j'ai devin luciole?
« Modifi: 31 dcembre 2012, 16:12 par Groud »

luciole

  • Membre
  • 2315 posts
31 dcembre 2012, 16:23
J'avais pris celui la parce que c'etait le premier que j'avais porte de main mais n'importe quel fichier peux convenir^^

Pas de problmes pour le C# j'ai dj t jet quelque coup d'oeil et c'est vachement sympa^^ je crois que j'avais vu les fonctions, et que j'etais sur les listes/enumrations

Edualc

  • Membre
  • 7361 posts
31 dcembre 2012, 17:53
Le meilleur langage c'est
Peut importe la suite du message, cette suite de mots fait perdre toute crdibilit son auteur.  :cheval

EDIT: sauf si contexte non gnraliste.
« Modifi: 31 dcembre 2012, 17:57 par Edualc »

Biodd13

  • Membre
  • 489 posts
05 janvier 2013, 18:54
Le meilleur langage c'est le C# donc bon, mais si tu cherches un jour de l'aide dans ce langage voir le VB.NET

okinami

  • Membre
  • 468 posts
28 janvier 2013, 20:37
Dsole de remonter le topic, mais un tableau en C++ peut tre allou dynamiquement (vector) et ainsi envoyer une valeur supplmentaire l'aide de push.back sans passer par malloc (langage C) qui peut tre aussi servi en C++ bien entendu.
Sinon oui d'autres langages sont mieux adapts pour les fichiers mais bon... faut bien apprendre le faire avec le langage que l'on apprend non ? on est pas tous expert et multilinguistes, merde quoi.

Edualc

  • Membre
  • 7361 posts
28 janvier 2013, 20:54
faut bien apprendre le faire avec le langage que l'on apprend non ? on est pas tous expert et multilinguistes, merde quoi.
Alors tu prends pas l'un des langages les plus compliqus qui soit, merde quoi.

PS: Le "tu" tait gnraliste, te sens pas personnellement vis.
« Modifi: 28 janvier 2013, 21:16 par Edualc »

luciole

  • Membre
  • 2315 posts
29 janvier 2013, 17:55
Oui j'aurais pu utiliser un vector mais nan 8D
C'est utile mais c'est pas ce qui me plaisait ce moment l :3

lol05709

  • Invit
29 janvier 2013, 18:35
Luciole envoie moi ca sur le fofo technique Avec la description de ce que tu veux faire exactement !

Pages: [1]    En haut ↑