Kommastellen gehen beim einlesen verloren, warum?
-
Lern mal den Umgang mit C++ Iostreams.
-
314159265358979 schrieb:
Lern mal den Umgang mit C++ Iostreams.
Sehr hilfreich. Was führt denn zum Fehler?
-
Vermutlich ist die Systemlocale auf Deutsch eingestellt, dort ist das Komma der Dezimaltrenner. Dann würde folgendes vor dem Einlesen Abhilfe schaffen, um für Datei die Standard C Locale (entspricht mehr oder weniger der amerikanischen) zu setzen:
Datei.imbue(std::locale::classic());
-
Aber würde in dem Fall eines deutschen Locales nicht aus
1.888, 1.889, 1.8901888, 1889, 1890werden, und nicht 1,1,1?
Versteh' mich nicht falsch, deine Idee, dass es an falsch gesetzten Locales liegen könnte, finde ich gut.
-
Hast du deine Array.txt so:
1.888 1.889 1.890oder mit Komma am Zeilenende?
MfG f.-th.
-
.open() und .close() existieren nicht.
-
314159265358979 schrieb:
.open() und .close() existieren nicht.
Kannst du dich mal mit solchen Randbemerkungen zurückhalten, wenn du nichts konstruktives zum Problem beizutragen hast?
-
314159265358979 schrieb:
.open() und .close() existieren nicht.
Kannst du bitte mal aufhören hier dauernd Schwachsinn zu erzählen?
Wenn das wieder eine originelle Anspielung auf RAII und Objektgültigkeit sein soll, dann sag es bitte so, dass der Threadersteller etwas damit anfangen kann.

-
kurz mal offtopic:
314159265358979 schrieb:
.open() und .close() existieren nicht.
wie ihr euch vielleicht noch errinnern könnt, habe ich vor einigen wochen diesen hier über RAII aufgemacht, der genau auf dieses verhalten, diese offtopic aussagen von mister pi oben abzielte...
@b2t:
zeig uns doch mal deine datei, oder wenn sie zu gross ist, den anfang und das ende, so 10-20 zeilen maximal...zur not kannst du aber auch die datei zeilenweise in einen string einlesen, diesen in einen string stream schieben und dir daraus deinen double holen...
wobei das eigentlich genau dasselbe ist, aber da kannst du etwaige punkte entfernen oder ersetzen - rein testweise vielleicht
-
Skym0sh0 schrieb:
kurz mal offtopic:
314159265358979 schrieb:
.open() und .close() existieren nicht.
wie ihr euch vielleicht noch errinnern könnt, habe ich vor einigen wochen diesen hier über RAII aufgemacht, der genau auf dieses verhalten, diese offtopic aussagen von mister pi oben abzielte...
Und man hat sich darauf geeinigt, dass Konstruktoren und Destruktoren nicht böse sind, hab ich so in Erinnerung
