Поиск:

Ответ в темуСоздание новой темы Создание опроса
> CSV(экспортированный битриксом) в StringGrid, неправильно загружаются данные 
:(
    Опции темы
Kasiro
Дата 25.10.2010, 21:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 11.7.2010

Репутация: нет
Всего: -1



Всем добрый вечер!

Юзаю Builder C++ 2010. Загружаю в StringGrid данные из CSV файла - http://ifolder.ru/control/?file_id=1994309...168185a503601d8
При этом данные распихивает по столбцам неверно см. рис.

Пробовал TMS AdvStringGrid, TCSVReader (скомпилированный пример и сам компонент - http://www.tmedia.de/delphi-komponenten.ht...5Bdocroot%5D%3D ).
В Экселе в свою очередь всё распределяется как надо.
Гуру, подскажите пожалуйста что я упустил

Скрытый текст

TCSVReader:
user posted image

AdvStringGrid:
user posted image

Excel 2007:
user posted image

PM MAIL   Вверх
system
Дата 25.10.2010, 22:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 48
Регистрация: 16.5.2008

Репутация: нет
Всего: 2



Скорее всего проблема в том, что в тексте используются html выражения типа «
при этом они не являются терминальными, т.е. несмотря что в них используется символ ";" их надо пропускать, 
плюс текст csv строки в данном случае многострочный. Т.е. я бы разобрал его в ручную, там делать особо нечего, чем выяснять почему 
не работают стандартные компоненты, тем более не исключен вариант, что они вообще с таким текстом не заработают.
PM MAIL   Вверх
Kasiro
Дата 26.10.2010, 14:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 11.7.2010

Репутация: нет
Всего: -1



system, читал вручную - резалт такой же, потом выбрал другой разделитель (тильду ~) резалт такой же, вывод - проблема в многострочности текста
Заменил все /n на пробелы, получился один столбец (оно и не мудрено, каждая строка таблицы, должна соответственно начинаться с новой строки в файле)
Кроме считания столбцов и т. д. есть какие-нибудь методы?
Может быть можно получить данные из экселя?
Он распознаёт все данные как надо.

PM MAIL   Вверх
Platov
Дата 26.10.2010, 14:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 23.7.2009

Репутация: 2
Всего: 2



Эксель понимает этот файл потому, что знает что всё что внутри кавычек ("") это одна ячейка. Если запихиваешь в StringGrid анализируй не только разделители но и наличие кавычек рядом с ними.
PM MAIL   Вверх
system
Дата 26.10.2010, 20:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 48
Регистрация: 16.5.2008

Репутация: нет
Всего: 2



Не гарантирую что будет работать во всех случаях ( нет времени на отладку ), 
но с примером файла работает, разбор сделал вручную, с тебя кофе smile) .

Положил в папку, файл со схемой автомата разбора (очень простой), на всякий случай вдруг будешь разбираться

Это сообщение отредактировал(а) system - 26.10.2010, 22:49

Присоединённый файл ( Кол-во скачиваний: 28 )
Присоединённый файл  extract.rar 111,56 Kb
PM MAIL   Вверх
system
Дата 27.10.2010, 17:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 48
Регистрация: 16.5.2008

Репутация: нет
Всего: 2



Kasiro,  зашел, скачал, ушел ни слова не сказал ?
PM MAIL   Вверх
Kasiro
Дата 28.10.2010, 15:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 11.7.2010

Репутация: нет
Всего: -1



system, Огроменное спасибо дружище!!!
я щас замотался, бабушку положили в больницу, щас один дома, всё на мне
прости пожалуйста что сразу не отрегировал
сейчас потестю! )

Добавлено через 3 минуты и 35 секунд
system, Отлично работает!!))
Очень благодарен тебе, ещё раз огромное спасибо!!))
С меня кофе с конфетами)))
PM MAIL   Вверх
system
Дата 28.10.2010, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 48
Регистрация: 16.5.2008

Репутация: нет
Всего: 2



ну наконец вернулся, а я уж подумал потратил 2 часа времени и даже спасибо не услышу smile
в общем рад что работает, если что - код простой думаю разобраться будет не сложно.
PM MAIL   Вверх
Kasiro
Дата 29.10.2010, 09:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 11.7.2010

Репутация: нет
Всего: -1



system, очень признателен за помощь))
у себя внедрил, всё отлично работает)
ещё раз спасибо)
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.1096 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.