String-Zerlegung



  • Hallo, ich brauch ein wenig Hilfe bei der Zerlegung von strings.

    Ich eine Eingabe, die folgendermaßen aussieht zerlegen!
    c:\verzeichnis1\verzeichnis2\tuwas.exe

    Ich möchte folgende Ausgaben haben:
    Festplatte : c:
    Verzeichnis1 : verzeichnis1
    Verzeichnis2 : verzeichnis2

    ------- soll solange laufen bis kein unterverzeichnis mehr vorhanden-------

    Verzeichnis n : verzeichnis n
    Datei : tuwas.exe

    Habe schon mal so angefangen:
    [code]
    void eingabe(char* Text)
    {
    int i = 0;
    int a = 0;
    cout << "Bitte geben Sie ein Verzeichnis an: " << endl;
    cin >> Text;
    std::string verzeichnis(Text);
    for (i=0;i<=verzeichnis.find(":");i++)
    {
    Text[i];}



  • Hilft dir das?

    int main()
    {
    	std::string s("c:\\bla\\blubb");
    	std::string tmp("");
    
    	while (s.find_first_of ("\\", NULL) != s.npos)
    	{
    		tmp = s.substr (0, s.find_first_of ("\\", NULL));
    		s   = s.substr (s.find_first_of ("\\", NULL)+1, s.npos);
    		printf ("%s\n", tmp.c_str());
    	}
    
    	if (s.length() != 0)
    		printf ("%s\n", s.c_str());
    
    	return 0;
    }
    

Anmelden zum Antworten