나는 다른 도시와 도로가있는 파일을 가지고 있는데, 나는 빌 (프랑스어로 된 도시)이라는 클래스와 루트 (프랑스어로 된 도로)라는 클래스를 작성했다.문자열로 된 객체 생성
Ville *myCity = new Ville("myCity");
도로 생성자 :
Route *myRoad = new Road("myRoad",400, 130, myCity1, myCity2);
빌 생성자처럼 호출 경로의 vectof에 빌 내 모든 경로의 벡터에 내 모든 빌을 둘 필요 여기서 인수 a 도로 이름, 크기, 최대 속도 및 도로가 연결되어있는 두 도시를 다시 표시합니다.
같은 파일보기 :
< ville>
Paris
Berlin
...
< /ville>
< route>
A0 400 130 Paris Berlin
...
</route>
내가 데이터 추출을위한 것으로했다
:
Ville *element = new Ville (element);
:
std::string element;
int statut = 0;
while(fichier >> element)
{
if(element == "</ville>" || element == "</route>")
{
statut = 0;
fichier >> element;
}
if(element == "<ville>" || statut == 1)
{
if(statut == 0)
{
fichier >> element;
}
cout << "Ville: " << element << endl;
statut = 1;
}
if(element == "<route>" || statut == 2)
{
if(statut == 0)
{
fichier >> element;
}
cout << "Route: " << element;
fichier >> element;
cout << " Taille: " << element;
statut = 1;
fichier >> element;
cout << " Speed: " << element;
fichier >> element;
cout << " Relie: " << element;
fichier >> element;
cout << " à " << element <<endl;
statut = 2;
}
}
}
else
{
cout << "Error: Can't open the file" << endl;
}
나는 내가 뭔가를 할 수 있도록하는 방법을 찾고 있어요
개체로 쉽게 변형되도록 데이터를 추출하는 방식을 변경해야합니까?
나는 그 질문을 이해하지 못한다. 'new Ville ("myCity")'를 할 수 있고'element'가 문자열이라면'new Ville (element.c_str())'을 원하나요? – Barry
xml 파서를 찾으십니까? http://stackoverflow.com/questions/9387610/what-xml-parser-should-i-use-in-c 또는 http://lars.ruoff.free.fr/xmlcpp/btw. 마지막 행을 수정하십시오 - 두 가지 다른 요소에 대해 요소를 사용하십시오 – Palo
변수를 사용하는 도시는 도시 자체와 동일한 이름을 가지므로 목적으로 수행했습니다. – mel