Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.14;
Скачать: CL | DM;

Вниз

точка в делфи   Найти похожие ветки 

 
inkvizitor ©   (2006-12-25 09:07) [0]

подскажите как в делфи точку заменять на запятую:
есть *.txt(в мемо) файл в нем числа вещественные.
пытался делать по этому коду, но че то неработает?

var s:string;
    i,j:integer;
for i:=0 to Memo1.Lines.Count-1 do {цикл по всему мемо}
begin
s:=Memo1.Lines.Strings[i-1]; {присваиваем S строку}
for j:=1 to length(s) do    {открываем цикл по строке}
if (s[j]=".") then s[j]:=",";   {замена точки на запятую}
end;


 
ЮЮ ©   (2006-12-25 09:17) [1]


> но че то неработает?


Обратно в Memo1 не положил:
 Memo1.Lines[j] := s;


 
Ega23 ©   (2006-12-25 09:29) [2]

Memo1.Text := StringReplace(Memo1.Text, ",", ".", rfReplaceall);


 
inkvizitor ©   (2006-12-25 09:31) [3]


> Обратно в Memo1 не положил:
>  Memo1.Lines[j] := s;

а куда это ставить, в эту "красоту"?

procedure TForm1.Button3Click(Sender: TObject);
var
 i,j:integer;
 s:string;
begin
Setlength(x,Memo1.Lines.Count);
for i:=0 to Memo1.Lines.Count-1 do
begin
s:=Memo1.Lines.Strings[i-1];
for j:=1 to length(s) do
if (s[j]=".") then  s[j]:=",";
end;
for i:=0 to Memo1.Lines.Count-1 do
x[i]:=strtofloat(Memo1.Lines[i]);
Chart1.Series[0].Clear;
for i:=0 to Memo1.Lines.Count-1 do begin
Chart1.SeriesList[0].Add(x[i]," ",clblack); end;
end;


 
inkvizitor ©   (2006-12-25 09:36) [4]


> Memo1.Text := StringReplace(Memo1.Text, ",", ".", rfReplaceall);


выдает: incompatible types:"TrepaleFlags" and "Enumeration"?
если не трудно см.
> inkvizitor ©   (25.12.06 09:31) [3]
.


 
ЮЮ ©   (2006-12-25 09:38) [5]

обратись к автору "красоты", коль в 3х строках кода разобраться не можешь


 
inkvizitor ©   (2006-12-25 09:49) [6]


> обратись к автору "красоты", коль в 3х строках кода разобраться
> не можешь

ну зачем так обижать?
мне надо
1)загрузить в мемо *.txt файл (вещественые числа)
2)преобразовать в массив
3)построить график этого массива.
у меня строит график только целых чисел и с запятой,а с точкой не строит.


 
Ega23 ©   (2006-12-25 09:54) [7]


> Memo1.Text := StringReplace(Memo1.Text, ",", ".", [rfReplaceall]);


 
novill ©   (2006-12-25 10:03) [8]

> [0] inkvizitor ©   (25.12.06 09:07)


А почему никто не предложит немного варварский метод:
если в файле разделителями запятые, то DecimalSeparator:="," если в файле точки, то DecimalSeparator:="." ?


 
Ega23 ©   (2006-12-25 10:04) [9]


> А почему никто не предложит немного варварский метод:


Потому, что может быть и запятая и точка. Ку?


 
novill ©   (2006-12-25 10:07) [10]

> [9] Ega23 ©   (25.12.06 10:04)

я-то ку, но это не было явно сказано.


 
inkvizitor ©   (2006-12-25 10:17) [11]


var
 i,j:integer;
 s:string;
begin
Setlength(x,Memo1.Lines.Count);
Memo1.Text := StringReplace(Memo1.Text, ",", ".",[rfReplaceall]);

for i:=0 to Memo1.Lines.Count-1 do
x[i]:=strtofloat(Memo1.Lines[i]);

Chart1.Series[0].Clear;
for i:=0 to Memo1.Lines.Count-1 do begin
Chart1.SeriesList[0].Add(x[i]," ",clblack);
Chart1.BottomAxis.LabelsAngle:=45;
end;

выбивает.sos :-(


 
ЮЮ ©   (2006-12-25 10:23) [12]

ну зачем так обижать?
мне надо
1)загрузить в мемо *.txt файл (вещественые числа)
2)преобразовать в массив
3)построить график этого массива.


почему же словесный алгоритм не можешт сопоставить с кодом?
Зачем тебе два цикла подряд?

for i:=0 to Memo1.Lines.Count-1 do
begin
 s:=Memo1.Lines.Strings[i-1];
 for j:=1 to length(s) do
 if (s[j]=".") then  s[j]:=",";
 x[i]:=strtofloat(s);
end;


Memo1.Text := StringReplace(Memo1.Text, ",", ".",[rfReplaceall]);
Ты запятую меняешь на точку. А хотел наоборот :)


 
inkvizitor ©   (2006-12-25 11:13) [13]


> for i:=0 to Memo1.Lines.Count-1 do
> begin
>  s:=Memo1.Lines.Strings[i-1];
>  for j:=1 to length(s) do
>  if (s[j]=".") then  s[j]:=",";
>  x[i]:=strtofloat(s);
> end;
> Memo1.Text := StringReplace(Memo1.Text, ",", ".",[rfReplaceall]);


на графике одни нули и ничего;-(?


 
ЮЮ ©   (2006-12-25 11:26) [14]


> на графике одни нули и ничего;-(?


код свой показывать надо, а не с форума :) А в Memo1 числа есть?


 
inkvizitor ©   (2006-12-25 11:46) [15]


> код свой показывать надо, а не с форума :) А в Memo1 числа
> есть?

код если не трудно взгляни
> inkvizitor ©   (25.12.06 09:07)  

и
> inkvizitor ©   (25.12.06 09:31) [3]

это и есть моя "красота"
там пытался чето сделать но не то.
числа типа 123,456
               ***,*** строит график на chart-е
а числа типа 123.456
                  ***.*** уже не строит .
хочется что бы программе было по барабану что за знаки(./,) - сама правильно различала и считывала


 
ЮЮ ©   (2006-12-25 11:57) [16]


> код если не трудно взгляни
> > inkvizitor ©   (25.12.06 09:07)  


Издеваешься? Целый вечер ему вдалбливают, что сабжевый код меняет знаки во временной переменной и нигде изменения не сохраняет, а он упёрся как баран.


 
inkvizitor ©   (2006-12-25 12:15) [17]


> Издеваешься? Целый вечер ему вдалбливают, что сабжевый код
> меняет знаки во временной переменной и нигде изменения не
> сохраняет, а он упёрся как баран.

ну опять?
и как быть тогда?подскажи?pls.


 
Anatoly Podgoretsky ©   (2006-12-25 12:26) [18]

> inkvizitor  (25.12.2006 11:46:15)  [15]

У чисел нет ни точки, ни запятой.
Это строки


 
inkvizitor ©   (2006-12-25 14:43) [19]


> Ega23 ©   (25.12.06 09:29) [2]


> ЮЮ ©   (25.12.06 10:23) [12]

спасибо помогло.с наступаюшим всех!



Страницы: 1 вся ветка

Текущий архив: 2007.01.14;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.053 c
2-1166683572
ssss
2006-12-21 09:46
2007.01.14
TWebBrowser-ссылка!


3-1161809652
softsapiens
2006-10-26 00:54
2007.01.14
Обновление базы данных


2-1166992055
Vladimir1984
2006-12-24 23:27
2007.01.14
Карта высот(OpenGL) как заменить цвета?


15-1166454093
DillerXX
2006-12-18 18:01
2007.01.14
Вопрос по 2м шахматным позициям


15-1166780011
IMHO
2006-12-22 12:33
2007.01.14
Передать ссылку с Authorization