4 / 4 / 0
Регистрация: 11.03.2012
Сообщений: 120
|
|
1 | |
Чтения данный из файла03.10.2013, 22:30. Показов 1138. Ответов 17
Метки нет (Все метки)
Здравствуйте. Есть задача построить график по координатам Х Y. Числа нужно прочитать из файла. Как я понимаю нужно сделать массив для Х и Y. Но не знаю как прочитать их из файла *.txt, и как передать в Chart.Текстовые файлы имеют вид:
Кликните здесь для просмотра всего текста
0 0
1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0 10 0 11 0 12 0 13 0 14 0 15 011 16 0 17 0 18 0 19 0 20 0 21 0 22 0 23 0 24 0 25 07 26 037 27 029 28 022 Кликните здесь для просмотра всего текста
4.00000000000000E+0000 2.00000000000000E+0000
4.10000000000000E+0000 0.00000000000000E+0000 4.20000000000000E+0000 4.00000000000000E+0000 4.30000000000000E+0000 0.00000000000000E+0000 4.40000000000000E+0000 0.00000000000000E+0000 4.50000000000000E+0000 1.00000000000000E+0000 4.60000000000000E+0000 0.00000000000000E+0000 4.70000000000000E+0000 0.00000000000000E+0000 4.80000000000000E+0000 1.00000000000000E+0000 4.90000000000000E+0000 1.00000000000000E+0000 5.00000000000000E+0000 0.00000000000000E+0000 5.10000000000000E+0000 4.00000000000000E+0000 5.20000000000000E+0000 0.00000000000000E+0000 5.30000000000000E+0000 0.00000000000000E+0000 5.40000000000000E+0000 0.00000000000000E+0000 5.50000000000000E+0000 1.00000000000000E+0000 5.60000000000000E+0000 0.00000000000000E+0000 5.70000000000000E+0000 1.00000000000000E+0000 5.80000000000000E+0000 2.00000000000000E+0000 5.90000000000000E+0000 0.00000000000000E+0000 6.00000000000000E+0000 1.00000000000000E+0000 6.10000000000000E+0000 0.00000000000000E+0000 6.20000000000000E+0000 0.00000000000000E+0000 6.30000000000000E+0000 2.00000000000000E+0000 6.40000000000000E+0000 1.50000000000000E+0001 Причем заранее не известно колличество точек. Беда... Помогите пожалуйста.
0
|
03.10.2013, 22:30 | |
Ответы с готовыми решениями:
17
пример чтения картинки из файла Удаление файла, использующегося в данный момент Скорость поблочного чтения из файла в несколько Гб падает как с программировать кнопку чтения текстового файла |
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
|
03.10.2013, 22:35 | 2 |
В первой вставке у вас встречаются числа начинающиеся с нуля 037, 07 и т.д. Это нормально?
0
|
4 / 4 / 0
Регистрация: 11.03.2012
Сообщений: 120
|
|
03.10.2013, 22:46 [ТС] | 3 |
они должны считываться как 37 и 7 соответственно.
Добавлено через 1 минуту Почему то во всем этом файле все числа так заданы. Добавлено через 8 минут Так как файл заренее не известен,то нужно добавить openDialog,и уже после выбора файла загружать данные в два массива,и уже по ним строить график. Верно?
0
|
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
|
03.10.2013, 22:48 | 4 |
Верно, но 2 одномерных или 1 двумерный массив
0
|
4 / 4 / 0
Регистрация: 11.03.2012
Сообщений: 120
|
|
03.10.2013, 22:55 [ТС] | 5 |
Я уже пересмотрел несколько учебников,но не нашел как реализовать это. Наверное одио двумерный будет удобнее.
Да и по форумам нет решения подобных задач. По крайней мере я не нашел. Помогите,пожалуйста. Добавлено через 3 минуты Нужно ведь создать указатель на массив. Так как не известна его размерость...Запустить цикл и создавать следующюю его составляющюю. Но не знаю как это сделать.
0
|
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
|
03.10.2013, 23:49 | 6 |
Можно посчитать сначала кол-во строк и узнать размер массивов. Можно загрузить файл в TStringList и получите кол-во строк.
0
|
4 / 4 / 0
Регистрация: 11.03.2012
Сообщений: 120
|
|
03.10.2013, 23:54 [ТС] | 7 |
gumi250, Вы могли бы примерный вариант этого показать?
0
|
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
||||||
04.10.2013, 00:27 | 8 | |||||
0
|
Супер-модератор
|
||||||
04.10.2013, 12:34 | 9 | |||||
1
|
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
|
04.10.2013, 12:52 | 10 |
Конечно проще. Нет предела оптимизации
1
|
4 / 4 / 0
Регистрация: 11.03.2012
Сообщений: 120
|
|
04.10.2013, 19:42 [ТС] | 11 |
UI, Спасибо,но в строчке 17
Y[i] = StrToFloat(SL->ValueFromIndex[i]); возникает ошибка [C++ Error] Spectrum.cpp(47): E2316 'ValueFromIndex' is not a member of 'TStringList' Добавлено через 3 минуты Это из-за того что у меня Builder 6? А какой лучше поставить тогда?
0
|
Супер-модератор
|
|
04.10.2013, 19:54 | 12 |
Хм... Да почему же Builder 6 не поддерживает его? На кой фиг тогда Names поддерживается, если нельзя пару для него вытянуть? Что за бред? Главное, еще в Дельфи 6 работало, а в Билдере, видите ли, не допилили...
Ну уж есть ставить - то никак не ниже XE...
0
|
4 / 4 / 0
Регистрация: 11.03.2012
Сообщений: 120
|
|
04.10.2013, 19:56 [ТС] | 13 |
0
|
4 / 4 / 0
Регистрация: 11.03.2012
Сообщений: 120
|
|
04.10.2013, 20:14 [ТС] | 16 |
Нет. Вообще как то странно эта версия работает. Надо новую скачать.
0
|
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
|
|
05.10.2013, 02:46 | 17 |
0
|
Практикантроп
4826 / 2718 / 526
Регистрация: 23.09.2011
Сообщений: 5,777
|
|
05.10.2013, 09:58 | 18 |
... такой, чтоб стоял... .
Если напряжно после ST-> нажать Ctrl+пробел и посмотреть, какие функции предлагаются; и увидеть, что у своего Билдера имеется соотв. функция: Y[i] = StrToFloat(SL->Values[i]); (Values вместо ValueFromIndex), тогда... . Но может быть я ошибаюсь? Добавлено через 34 минуты ... ошибаюсь, конечно, - SL-> вместо ST->
0
|
05.10.2013, 09:58 | |
05.10.2013, 09:58 | |
Помогаю со студенческими работами здесь
18
Нужен код для чтения из файла в StringGrid Открытие файла. Алгоритм чтения в зависимости от расширения Как узнать длину двоичного файла, открытого для чтения? В данный класс добавить код для построчного чтения из файла Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |