Читаем CSV текстовый файл в StringGridDelphi , Базы данных , ASCII и CSVЧитаем CSV текстовый файл в StringGrid
Привет! Я переведу текст на русский язык. Процедура ReadTabFile Процедура принимает три параметра: FN (TFileName), FieldSeparator (символ) и SG (TStringGrid). Она загружает файл CSV из FN, используя FieldSeparator как разделитель, и заполняет SG данными. Инициализация Процедура создает объект TStringList под названием Les_Strings для загрузки файла. Затем она получает количество строк (CountLines) путем подсчета строк в файле плюс фиксированных строк в сетке. Аналогично, она получает количество столбцов (CountCols) путем разбора первой строки файла и подсчета вхождений разделителя. Правка размеров сетки Если количество строк или столбцов превышает текущие размеры сетки, процедура корректирует счетчик строк и столбцов сетки соответственно. Итерация по строкам Процедура затем проходит через каждую строку таблицы с помощью цикла for. Для каждой строки: 1. Она инициализирует индекс столбца (Colonne) в последнем фиксированном столбце. 2. Она увеличивает индекс строки (Ligne) на 1. 3. Она устанавливает начальный позиции (StartPos) равным 1 и текущую строку (S) равной текущей строке. 4. Она находит позицию разделителя в S с помощью функции Pos и присваивает ее TabPos. 5. Она проходит циклом, пока TabPos не будет равно 0, разбирая каждый поле: * Она копирует подстроку от StartPos до TabPos - 1 в ячейку сетки. * Она обновляет S, копируя подстроку от TabPos + 1 до конца строки (ограниченной до 999 символов). * Она находит следующее вхождение разделителя в S. 6. Когда TabPos будет равно 0, это означает, что больше нет полей в строке. Очистка Наконец, процедура освобождает объект TStringList с помощью метода Free. Пример использования Пример кода демонстрирует использование этой процедуры, открывая файл CSV под названием "TEST.TXT" с табуляцией (#9) как разделителем и заполняя компонент TStringGrid под названием StringGrid1. Статья описывает процедуру чтения CSV-текстового файла в компонент TStringGrid Delphi. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: ASCII и CSV ::
|
|||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |