![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
не могу загрузить числа из txt файла((( [D7, XP]
Resvald © (2008-11-18 22:13:00)"123 12.12.2008 А 3 29 56 34 78 51 36 78 62 32"-так выглядит строка,первые цифры-номер строки по порядку, потом дата, скачать нужно только числа "29 56 34 78 51 36 78 62 32", но строк очень много, помогите плиз, на компиляции все работает, а как доходит дело до закачки файла он отказывается, пишет что у мну числа не верные(((
palva (2008-11-24 19:34:00) [1]
> Resvald © (24.11.08 10:16) [23]
Вместо того чтобы ответить на мой вопрос и привести код, в котором объявляется переменная String1 вы написали много новых слов, смысл которых для меня так же не понятен, как и предыдущие ваши посты.
Плохиш (2008-11-24 13:51:00) [2]
> palva © (23.11.08 09:41) [18]
>
>
> > Read(FName,Int1,String1); //пропуск ненужных данных
>
> Подозреваю, что после выполнения этого оператора в Int1
> окажется первое число, а в String1 остаток строки
Почему " Подозреваю"? Это даже в справке описано ;-)
Resvald (2008-11-24 10:19:00) [3]to Amoeba
сегодня перепишу и вывешу в удобочитаемой форме
Resvald (2008-11-24 10:16:00) [4]to Palva [18],[21]
to Zeqfreed[22]
> SetLength(String1,16);
> repeat //повторять до конца файла
> Read(FName,Int1,String1); //пропуск ненужных данных
первый оператор как раз и задает длину строки, Делфи по умолчанию воспринимает тип String как динамический массив, с верхним ограничением 256, но способы задачи длины этого массива не отличаются от общих при работе с динамическими массивами.
Zeqfreed (2008-11-23 16:51:00) [5]> palva © (23.11.08 15:29) [21]
String[256] ? :)
В [18] автору то же самое (фактически) сами подсказали.
palva (2008-11-23 15:29:00) [6]
> тип стринг с ограниченной длинной
Объясните, что это такое или приведите код. Я не понимаю.
Resvald (2008-11-23 12:32:00) [7]Прошу простить если кого сильно испугал своим кодом)))
Resvald (2008-11-23 12:31:00) [8]А подскажите, пробел ли является разделителем??? может я тут чего заглючил???
> var c: Char;
> ...
> Read(FName,Int1,c,c,c,c,c,c,c,c,c,c,c,c,c,c,c,c); //пропуск
> ненужных данных
насчет этого, а разве тип стринг с ограниченной длинной не считывает число символов, независимо от их содержания(кроме системных), причем число самих символов и является длиной строки(если она задана)??
palva (2008-11-23 09:41:00) [9]
> Read(FName,Int1,String1); //пропуск ненужных данных
Подозреваю, что после выполнения этого оператора в Int1 окажется первое число, а в String1 остаток строки, начиная с пробела после первого числа. Попробуйте переменную String1 объявить как массив символов нужной длины. Либо напишите так:
var c: Char;
...
Read(FName,Int1,c,c,c,c,c,c,c,c,c,c,c,c,c,c,c,c); //пропуск ненужных данных
Германн (2008-11-23 01:25:00) [10]
> Resvald © (22.11.08 23:19) [15]
>
> SetLength(Bool,Int2,80); //задаю количество вариантов в
> событии
> SetLength(String1,16);
> repeat //повторять до конца файла
> Read(FName,Int1,String1); //пропуск ненужных данных
> repeat //повторять до конца строки
> Read(Fname,Int1); //считать данные
>
Что за бред! Именуй переменные в соответствии с их смыслом. И не используй имена переменных совпадающие с названиями типов переменных. Или имена включающие названия типов.
> прошу простить, протупил что не повесил код сразу
Amoeba © (23.11.08 00:12) [16] уже простил и я с ним согласен.
Остальное после того как приведёшь код в "нормальный" вид или после конкретного вопроса.
Amoeba (2008-11-23 00:12:00) [11]
> прошу простить, протупил что не повесил код сразу
Нема за що. Наказал ведь сам себя.
Resvald (2008-11-22 23:19:00) [12]SetLength(Bool,Int2,80); //задаю количество вариантов в событии
SetLength(String1,16);
repeat //повторять до конца файла
Read(FName,Int1,String1); //пропуск ненужных данных
repeat //повторять до конца строки
Read(Fname,Int1); //считать данные
вот здесь и выпадает глюк((( эта часть кода уже написана, но без считанных данных она бессмысленна
until Eoln(Fname); //проверка конца строки
Readln; // переход на сл. строку
Int2:=Int2+1; // прибавить еще одну строку к массиву
until Eof(FName);//проверка конца файла
таких строк много, потому организовал динамический массив и пытаюсь туда все загнать
да еще, спасибо всем кто откликнулся и еще откликнется, прошу простить, протупил что не повесил код сразу
Amoeba (2008-11-19 14:53:00) [13]
> Anatoly Podgoretsky © (19.11.08 14:39) [11]
>
> > Amoeba (19.11.2008 11:01:08) [8]
>
> Я так и думал, что ты провокатор.
>
Yes!
clickmaker (2008-11-19 14:41:00) [14]если последовательность чисел, которые нужно "скачать" всегда начинается после 4-го пробела, то какие проблемы?
Anatoly Podgoretsky (2008-11-19 14:40:00) [15]
> Еще дело может быть в региональных стандартах.
Ага в локализации Х числа выводит римские, хотя они тоже верные.
Anatoly Podgoretsky (2008-11-19 14:39:00) [16]> Amoeba (19.11.2008 11:01:08) [8]
Я так и думал, что ты провокатор.
Amoeba (2008-11-19 11:34:00) [17]
> Franzy (19.11.08 11:30) [9]
>
> Еще дело может быть в региональных стандартах.
Пытаемся включить глючный телепатор?
Franzy (2008-11-19 11:30:00) [18]Еще дело может быть в региональных стандартах.
Amoeba (2008-11-19 11:01:00) [19]
> Плохиш © (19.11.08 10:55) [7]
>
>
> > Amoeba © (19.11.08 10:41) [6]
> > Код в студию!
>
> Испугаться хотишь? :-))
Меня испугать трудно. Просто интересно будет посмотреть на реакцию форумчан.
Плохиш (2008-11-19 10:55:00) [20]
> Amoeba © (19.11.08 10:41) [6]
> Код в студию!
Испугаться хотишь? :-))