Avatar billede susrn Nybegynder
24. februar 2003 - 09:10 Der er 9 kommentarer og
1 løsning

ifstream til string, hvordan

Jeg arbejder i borland c++ builder, jeg har en tekst fil som jeg gerne vil have læst ind i en String. Jeg har forsøgt med koden herunder, men der går ikke rigtigt, nogen bedre bud?

  ifstream ind;
  try {
      ind.open( soegStreng.c_str() );
      //s=?
  } catch ( Exception &e)
  {
      ShowMessage("Filen kan ikke åbnes, fejl: " +e.Message);
  }
Avatar billede arne_v Ekspert
24. februar 2003 - 09:34 #1
Avatar billede arne_v Ekspert
24. februar 2003 - 09:37 #2
vent der er et eller andet mystusk med dne kode.

Brug hellere det her eksempel:

#include <fstream>
#include <iostream>

using namespace std;

int main()
{
  char line[100];
  ifstream f("z.txt");
  while(!f.eof()) {
      f.getline(line, sizeof(line));
      cout << line << endl;
  }
}
Avatar billede susrn Nybegynder
24. februar 2003 - 09:58 #3
mange tak ;-)
Avatar billede susrn Nybegynder
24. februar 2003 - 10:08 #4
ikke alligevel, cout?? den virker ikke hos mig, hvad gør den?
Avatar billede arne_v Ekspert
24. februar 2003 - 10:15 #5
cout << line << endl;

skriver bare linien ud igen for at vise at det virker.

Den skal du næppe bruge.

Hvis du skal bruge den skal du bare include iostream og have
using namespace std.
Avatar billede susrn Nybegynder
24. februar 2003 - 10:25 #6
tak, nu løb jeg ind i noget andet, hvad er forskellen på string og AnsiString? Og hvordan konverterer man string til AnsiString.
Avatar billede arne_v Ekspert
24. februar 2003 - 10:34 #7
AnsiString er en speciel Borland klasse, som vistnok ligner STL string en del.

Jeg vil tro at du kan assigne en C string (nul termineret char array) til
en AnsiString.
Avatar billede arne_v Ekspert
24. februar 2003 - 10:35 #8
Avatar billede susrn Nybegynder
24. februar 2003 - 11:01 #9
jeg kan ikke assigne ml de to, bemærk String og string er ikke det samme, 
( string kommer fra dit første link ). Jeg forstår ikke forskellene ml de to eksempler, altså 1.link og dit eksempel. Øv, ind imellem er C++ noget bøvl, (viva java) men jeg er nu oppe at køre efter dine henvisninger, tak!
Avatar billede arne_v Ekspert
24. februar 2003 - 11:07 #10
Du skal have en string over i en AnsiString ?

Prøv med:

string s;
x  = s.c_str();

Men iøvrigt er det næppe godt at have både STL string og Borland
AnsiString i samme kode, da de ligner hinanden rigtigt meget.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester