string frage!!!
-
abend!
ich habe eine .txt datei eingelesen, und möchte nun einen string mit x zeichen genausolang machen, wie das eingelesene.
kann ich das so machen?
ifstream abc; abc.open(quelle.c_str(), ios_base::in); char xyz [] = "asdf"; int bla = 0; while (!abc.eof()) { if (bla == xyz.length) { bla = 0; } xyz = xyz + xyz[bla]; }ich glaube nämlich nich, das das so funzt, deshalb erst post

-
oO lies einfach direkt in einen std::string ... der ist nur so lang wie du eingelesen hast

-
hm es geht mir ja drum, das das zum verschlüsseln is

soll heißen, das der string variabel is ich hab nur nen beispiel eingegeben

-
es ist im besten fall sinnlos, ios_base::in anzugeben, weil es sowieso ein ifstream ist. (außerdem kannst du gleich den konstruktor dafür verwenden und musst nicht unbedingt ifstream::open verwenden)
xyz = xyz + xyz[bla];ich weiß jetzt zwar nicht, wie pseudo der code ist, aber das wird sicherlich nicht das sein, was du willst.
aus der aufgabenstellung wird man leider auch nicht viel schlauer:
hokage schrieb:
ich habe eine .txt datei eingelesen, und möchte nun einen string mit x zeichen genausolang machen, wie das eingelesene.
wenn du die datei eingelesen hast, hast du sie doch wohl schon in irgendeiner struktur drin?
was meinst du?ifstream file("test"); stringstream s; s << file.rdbuf(); string x = s.str();so etwas?
-
es geht darum:
der string soll sich immer wiederholen bis er genauso lang is wie die txt datei...
sry bin wohl nich imma sehr deutlich..
-
Lies einfach immer ein Zeichen aus...
-
also imma parallel von txt und von array oder was?
-
Ja oder du checkst vorher wie lang der String in der Datei ist...
-
@(D)Evil: Der pseudocoole Spruch deiner HP is echt peinlich

-
Der?
Not Found
The requested URL /new/ was not found on this server.
-
Was für ein Spruch und auf welcher Webseite? Hab mehrere ^^
@Topic: Leg halt beim lesen ne Zählervariable an ... wenn die länge des Strings der sooft wiederholt werden soll erreicht ist, setzt du die variable zurück und packst ans ende des Strings nochmal den selben string. Wenn am Ende da ne Differenz zwischen dem string und den eingelesenen Zeichen ist ... füll das halt auf.