proleme mit linefeed/ascii
-
Hallo!
Ich habe ein Programm wo ich einen String in Integer konvertiere (in ein Array) und so den Asciicode bekomme. Aber wenn ich den Asciicode wieder in einen String umwandle ,gehen die Linefeeds verloren .Das ganze läuft über 2 textfelder ab.Ein und Ausgabe in VC++ .Net. Aber sie werden einfach als Leerzeichen dargestellt .Hat jemand ne Ahnung wie ich das lösen könnte ,damit auch die Linefeeds erhalten bleiben ?
hab schon probiert an den Asciicode 10 ein \r anzuhängen ,aber das hat nix gebracht.
-
zeig mal ein bisschen mehr Code, so wie ich das verstehe, würde dann bei dir bei
::std::cout << char(int('\n'));
nicht wieder \n rauskommen? Aber vorher geht alles ohne Probleme?
Die \r\n Problematik sollte ja nur beim Binär-I/O auftretten.
-
hier ist der code
kann sein ,dass ich es mir ein bischen umständlich gemacht hab .
Text1 und Text2 sind die besagten Strings (CString).
Text1 wird ein Text eingegeben und über Text2 kommt er verschlüsselt raus (VC++)
Eigentlich ist nur der letzte Teil relevant ,aber hab mal alles gepostet.
Achso und Schluessel is auch CString.size_t length,text1leng; int b,c,h,p,k,d,z,x,y,inhalt; char matrix[256][256]; int data[255]; for( z = 0; z < 256;++z ) {data[z]=z;} for(x=0;x<256;++x) { d=x; for(y=0;y<256;++y) { if (d>255) {d=0;} inhalt=data[d]; matrix[x][y]=inhalt; ++d; }} k=0; p=0; text2=""; length = strlen(schluessel); text11eng=strlen(text1); for(h=0;h<(text1leng);++h) { for(b=0;b<256;++b) { c=text1[p]; if (p<text1len) { if (schluessel[k]==matrix[b][0]) { for (j=0;j<256;j++) { if (c==matrix[b][j]) text2+=matrix[b][c];++k; if(k==length){k=0;} ++p; }}}}