03. maj 2001 - 23:49Der er
13 kommentarer og 1 løsning
Underligt problem
Jeg er i gang med et program som tilfældigvis skal gemme nogle strenge i en fil. Disse strenge fik den fra nogle editboxes. (Jeg bruger Borland C++ Builder 5.0) Jeg havde 5 editboxes. Men pga. at jeg havde glemt at de skulle være i en groupbox var jeg nød til at slette disse 5 editboxes og så lave dem igen inde i groupbox\'en. Jeg gav dem NØJAGTIG de samme navne, og troede at det virkede. MEN sådan skulle det ikke gå. Nu kan den ikke indlæse filen korrekt. Jeg har som sagt 5 strenge, og i de sidste 4 strenge mangler det første tegn altid. Hvis jeg gemmer strengene som tomme får jeg en masse underlige tegn. (Fejl i hukommelsesadressen!?) Jeg ved det ikke, men her er koden. Håber at i forstår hvad problemet er, ellers så spørg, så skal jeg nok prøve at uddybe det.
Her er funktionen som gemmer indholdet af de 5 editboxes i en fil (RCT.RCT)
Det skal lige siges at det er Ed_Map som der er noget galt med. For hvis jeg fjerner alle linierne som har noget at gøre med Ed_Map, så virker det fint. Men ikke når jeg har den med. Meeeget mystisk.......help plz!
Jeg ved ikke lige hvad der er galt med din procedure, men det er noget hlet basalt galt med hele konceptet ....
Når du du har CB 5.0 Hvorfor i alverden bruger du så Char array\'s ? og ikke AnsiString ? Hvorfor bruger du en FILE stream til at gemme med ? Og ikke en Stream enten TMemoryStream eller TFileStream ?
Hehe, jeg bruger ikke ansistrings fordi at de funktioner som jeg bruger ikke havde det så godt med ansistrings (Da jeg prøvede). Og jeg bruger de funktioner som jeg gør fordi at jeg ikke har arbejdet med filer så meget før, og derfor ikke kender til nogle bedre funktioner. Men løsningen på mit problem er nok blot at omskrive min buggede kode til nogle smartere funktioner...
Men du har helt ret Borrisholt! :) Jeg burde bruge AnsiStrings.
alquesm >> Hvordan har du det med Delphi kode ? Fordi jeg har ikke lige en CB her, men \"kun\" en Delphi .. Hvis du gav mig load og save funktionerne kunne jeg sikkert strikke noget Delphi kode sammen til dig ?
Jeg vil sige som borrisholt. Hvis du bruger Builder så brug String (med stort S) char [] kan indholde mange sjove ting når man skal gemme på fil da de operere på adresserne. char [] er jo pointere og det må man ikke gemme på filer.....sagde min lærer engang.. String tager i mod alt, æder rup og stub
Jeg er taknemmelig for de svar og kommentarer som jeg har fået, men jeg har dog selv løst problemet. Jeg brugte FileOpen, FileWrite osv istedet for de ældre funktioner med streams. Programmet virker nu problemfrit, ja det vil sige bortset fra alle de andre problemet og bugs som jeg også prøver at få løst.
Igen tak for alle henvendelser, men jeg løste det jo selv, så jeg beholder desværre pointene. :(
Desuden bruger jeg stadig \"char csg[100]\" og det virker problemfrit! :)
Hmm, ok, jeg har nu selv fundet ud af det. Jeg bruger SPAWNCL eller sådan noget, men anyway, eftersom borrisholt var den første....og eneste som svarede får han pointene anyway! Tak for jeres hjælp! :)
SORRY!!!!!!!!!!!!!!!!!!!!! borrisholt, undskyld undskyld!! jeg ramte den forkerte knap! DOH Hvis du vil have pointene, så bare lige svar igen, så får du dem! :(
Godt så! :) Nu ramte jeg den rigtige knap! Og igen, tak for hjælpen! :)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.