Чтение файла по строкам и разбиение строки на поля
У меня такая проблема, есть текстовый файл.
1. Как считывать инфу по строчно из файла, в какую-нить переменную? И чтобы при каждом новом обращении к функции считывалась новая строка? Строка считывается целиком.
2. Существует ли функция, аналогичная функции split в Python, для разделения строки на поля, по определенному разделителю (например, запятая, пробел, двоеточие, ...)?
Спасибо!
Цитата:
Originally posted by Jackal
Доброго времени суток!
У меня такая проблема, есть текстовый файл.
1. Как считывать инфу по строчно из файла, в какую-нить переменную? И чтобы при каждом новом обращении к функции считывалась новая строка? Строка считывается целиком.
2. Существует ли функция, аналогичная функции split в Python, для разделения строки на поля, по определенному разделителю (например, запятая, пробел, двоеточие, ...)?
Доброго времени суток!
У меня такая проблема, есть текстовый файл.
1. Как считывать инфу по строчно из файла, в какую-нить переменную? И чтобы при каждом новом обращении к функции считывалась новая строка? Строка считывается целиком.
2. Существует ли функция, аналогичная функции split в Python, для разделения строки на поля, по определенному разделителю (например, запятая, пробел, двоеточие, ...)?
Можно использовать TStringList. Метод LoadFromFile позволяет считать текстовый файл и одновременно разбить его на строки. А если создать второй TStringList и последовательно присваивать его свойству CommaText строки из первого, можно добиться разбиения на строки по разделителю "точка с запятой".
Не знаю точно, в какой версии Билдера у TStringList появились свойства Delimiter и DelimitedText. Если они описаны в хелпе, ими также можно воспользоваться, когда разделитель отличается от принятого для CommaText.
Цитата:
Originally posted by smartsoft
Можно использовать TStringList. Метод LoadFromFile позволяет считать текстовый файл и одновременно разбить его на строки. А если создать второй TStringList и последовательно присваивать его свойству CommaText строки из первого, можно добиться разбиения на строки по разделителю "точка с запятой".
Не знаю точно, в какой версии Билдера у TStringList появились свойства Delimiter и DelimitedText. Если они описаны в хелпе, ими также можно воспользоваться, когда разделитель отличается от принятого для CommaText.
Можно использовать TStringList. Метод LoadFromFile позволяет считать текстовый файл и одновременно разбить его на строки. А если создать второй TStringList и последовательно присваивать его свойству CommaText строки из первого, можно добиться разбиения на строки по разделителю "точка с запятой".
Не знаю точно, в какой версии Билдера у TStringList появились свойства Delimiter и DelimitedText. Если они описаны в хелпе, ими также можно воспользоваться, когда разделитель отличается от принятого для CommaText.
Спасибо за помощь! :)