» Poradna » Programy

Převod STRINGu na EXTENDED v DELPHI

 |   | 

Mám následující problém:Na vstupu do aplikace mám textový soubor desetinných číslic, které vypadají takto: 3.719100735019887, 1.306497806710402, -1.316817239451133, atd. Počet desetinných míst je pravděpodobně (těch hodnot je v souboru něco přes 500) u všech stejný a to 15 desetinných míst. Hodnoty jsem si načetl do "Memo1" a to tak, že každá hodnota je na jednom řádku. Teď potřebuju dostat tyhle hodnoty do pole POLE: ARRAY [1..500] OF EXTENDED; a to každé číslo do jedné položky pole. Zkoušel jsem to takto:FOR i := 1 to 500 doBEGINpom := Memo1.Lines[i];POLE[i] := StrToFloat(pom);END;Bohužel mi DELPHI (po spuštění prográmku) vyhodí chybu "Project Project1.exe raised exception class EConvertError with message ''3.719100735019887' is not a valid floating point value'. Process stopped. Use Step or Run to Continue."Poradí mi někdo, jak převést řetězec na reálné číslo? (zkracování řetězců bych se chtěl vyhnout)

Odpovědi na otázku

 |   | 

Zalezi na desetinnem oddelovaci. U nas se pouziva "carka", ty mas v datech tecku.Pred tim cyklem si nastav DecimalSeparator := '.';Pak to nezapomen zase vratit...

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Problem je v te tecce. StrtoFloat pouziva oddelovac podle "mistniho nastaveni" a tam je pro Cechy ",". takze bude stacit nahradit "." za "," a pojede to.D.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Pravdepodobne je to sposebene nejakou medzerou ktrou mas pred,alebo za cislom pouzi preto nasledujucu konstrukciu:pom := trim(Memo1.Lines[i]);Inak je jedno dobre forum o Delphi na www.builder.cz,nabuduce odporucam podobne prispevky zasielat tam.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

v tomto pripade je to ale v tej bodke :)

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Díky všem za odpověď. Jsem zase o něco chytřejší.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

este jednou moznostou je pouzit Val(String, Value, ErrorCode), ktora pouizva standardne '.' a nestara sa o regionalne nastavenia...

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: Reálné číslo, Textový soubor, Floating


Určitě si přečtěte

3D tisk pro naprosté zelenáče: Co vyrobíte na laciném stroji za pár tisíc korun

3D tisk pro naprosté zelenáče: Co vyrobíte na laciném stroji za pár tisíc korun

** Domácí 3D tisk je dnes už finančně dostupný prakticky všem ** Lacinou tiskárnu pořídíte za pár tisíc korun ** Jak vlastně tisk probíhá a jak navrhnout, co vytisknout

Jakub Čížek | 67

13 praktických tipů a triků pro Mapy.cz, které možná neznáte

13 praktických tipů a triků pro Mapy.cz, které možná neznáte

** Mapy.cz neslouží jen k zobrazení podkladů a plánování tras ** Nabízejí celou řadu dalších praktických funkcí a možností ** Vybrali jsme třináct tipů a triků, o kterých možná (ne)víte

Karel Kilián | 31

20 tipů a triků pro Gmail: Užitečné maličkosti, které zefektivní práci s e-maily

20 tipů a triků pro Gmail: Užitečné maličkosti, které zefektivní práci s e-maily

** V Gmailu je řada užitečných funkcí, které možná všechny neznáte ** Odeslání mailu můžete například pozdržet či naplánovat na později ** Nad Gmailem můžete mít s několika triky daleko lepší kontrolu

Karel Kilián | 25


Aktuální číslo časopisu Computer

Megatest 20 procesorů

Srovnání 15 True Wireless sluchátek

Vyplatí se tisknout fotografie doma?

Vybíráme nejlepší základní desky