Windows AnsiString -> Unix ??
-
ist vielleicht etwas umständlich, aber mir fällt spontan keine einfachere Möglichkeit ein; so kriegst du auf jeden Fall eine double in einen string:
double d=3.14; string st01; strstream stst01; stst01<<d; stst01>>st01; cout<<st01<<endl;
-
.ToDouble ist doch die andere richtung oder??
also ein sting in ein double umändern *gg*koordx=Text1.ToDouble();
und wie funkt das mit dem
strstream
da sagt der compiler bei mir nur das es ein undefiniertes symbol ist...
hoffe ich nerve dich nichtdanke nochmal
Saroll
-
wohl ein Manko meinerseits, aber ich kenne kein .ToDouble() Gibt es sowas???
von string nach double würde ich auch über stringstream machen, analog zu dem Bsp s.o.//include<strstream> nicht vergessen!! double d02; string st02="7.411"; strstream stst02; stst02<<st02; stst02>>d02;
-
ich danke dir!!
jetzt muss ich nur noch so nen blöden übertretungsfehler finden und dann bin ich fertig!!danke
mfg saroll
-
ich spiel mich jetzt schon seit ner stunde mit den indizes meiner variablen und jedesmal kommt das dabei raus:
diese zeile wird in der sting.stl makiert:
__RWSTD::rwse_StringIndexOutOfRange);
is das ein übertrittsfehler oder bin ich wieder mal zu blöd??
mfg saroll
-
bißl' code gefällig?
-
na gut *gg*
hier is der code:#include <stdio.h> #include <iostream.h> #include <strstream> int main() {string Alles, Text1, Text2, Fertig, Temp; int wo=1,laenge, restore=0, i=1; double koordx,koordy; int zeichen=0, ende=0; strstream Tempkx, Tempky; do { wo=Alles.find('\x1B'); Text1=Alles.erase(wo,1); wo=Alles.find('\x1B'); if(wo==0) {wo=Alles.length()+2; ende=1; } Text1=Alles.substr(0,wo); Alles=Alles.erase(0,wo); Temp=Text1; if(Temp=="E") {wo=Alles.find('\x1B'); Text1=Alles.erase(wo,1); wo=Alles.find('\x1B'); Text1=Alles.substr(0,wo); Alles=Alles.erase(0,wo); Temp=Temp+Text1; } Text1=Temp; if(Temp[0]=='E'&&Temp[1]=='%'&&Temp[2]=='-'&&Temp[3]=='1') {Fertig=Fertig+"%! "; Text1=' '; } if(Temp[0]=='&'&&Temp[1]=='l'&&Temp[2]=='1'&&Temp[3]=='O') {Fertig=Fertig+"90 rotate 1000 800 translate "; Text1=' '; } if(Temp[0]=='&'&&Temp[1]=='l'&&Temp[2]=='0'&&Temp[3]=='O') {Fertig=Fertig+"800 1000 translate "; Text1=' '; } if(Temp=="\22") {Fertig=Fertig+"-10 0 rmoveto "; Text1=' '; } if(Temp[0]=='('&&Temp[1]=='1'&&Temp[2]=='9'&&Temp[3]=='U') {Fertig=Fertig+"/Times-Italic findfont setfont "; Text1=' '; if(Text1!="") {zeichen=1; } } if(Temp[0]=='('&&Temp[1]=='s'&&Temp[2]=='0'&&Temp[3]=='B') {Fertig=Fertig+"/Times-Roman findfont setfont "; Text1=Text1.erase(0,4); if(Text1!="") {zeichen=1; } } if(Temp[0]=='('&&Temp[1]=='s'&&Temp[2]=='3'&&Temp[3]=='B') {Fertig=Fertig+"/Times-Bold findfont setfont "; Text1=Text1.erase(0,4); if(Text1!="") {zeichen=1; } } if(Temp=="(s1P") {Tempkx<<koordx; Tempkx>>Temp; Fertig=Fertig + Temp+" "; Tempky<<koordy; Tempky>>Temp; Fertig=Fertig+Temp; Fertig=Fertig+" moveto "; Text1=' '; } if(Temp=="(s16602T") {Text1=' '; } if(Temp[0]=='('&&Temp[1]=='s') {laenge=Temp.length(); Text2=Text1.substr(laenge,1); Text1=Text1.erase(laenge,1); if(Text2=="V") {Text1=Text1.erase(0,2); Fertig=Fertig+"gsave "+Text1+" scalefont setfont "; restore=1; } } if(Text1[0]=='*'&&Text1[1]=='p') {laenge=Temp.length(); Text1=Text1.erase(0,2); laenge=Text1.length(); Text2=Text1.substr(laenge,1); Text1=Text1.erase(laenge,1); if(Text2=="X") { Tempkx<<Text1; Tempkx>>koordx; koordx=(koordx/11,77)*(-1); } if(Text2=="Y") { Tempky<<Text1; Tempky>>koordy; koordy=(koordy/11,77)*(-1); } Text1=' '; } if(zeichen==1) {zeichen=0; Fertig=Fertig+"('"+Text1+"') show "; if(restore==1) {Fertig=Fertig+"grestore "; restore=0; } } laenge=Alles.length(); }while(ende==0); return 0; }
danke
mfg saroll
-
was soll denn dein Code leisten? (könnte mir den Code auch genau ansehen, aber ein paar info's über das 'soll' sind beim Betracht des 'ist' ganz hilfreich)
-
der code soll ein dateiformat in ein anderes ändern, also .lis -> .ps
dazu hab ich das so gemacht das eben der .lis code eingelesen wird und (steht glaub ich nicht im code drin) und dann durchsucht wird auf escapesequencen... die wird dann weggenommen und die nächste gesucht, der teil dazwischen wird rausgenommen und dann geschaut welcher befehl es ist...
und demnach wird dann eben der ps code eingefügt...
-
benutze besser diese Prärozessordirektiven:
#include<iostream> #include<strstream> #include<string> using namespace std;
Wo, wie und mit was wird denn 'Alles' gefüllt?
-
*gg* ich hab das auch gerade gesehen...
ich hab vorhin unabsichtlich getchar() rausgenommen *sich selbst hau*
kein wunder das es nicht geht *sich selbst nochmal hau*danke mfg saroll
-
freshman.hit(Saroll);
Sarol.hitHimself(often);