Ну как бы да) для таких целей принято использовать БД (sqlite например)
Либо хранить информацию в файле в json или xml формате.
То как это делаете вы - неприемлемо, обычно когда хранят информацию в файле в текстовом виде, данные разбивают по меткам, и по этим же меткам их потом собирают в кучу. Например
1|Read|20/05/2014 15:31:38 +0600|+7xxxxx Number2: +7xxxxx|test test
2|Read|20/05/2014 15:31:38 +0600|+7xxxxx Number2: +7xxxxx|test test
3|Read|20/05/2014 15:31:38 +0600|+7xxxxx Number2: +7xxxxx|test test
4|Read|20/05/2014 15:31:38 +0600|+7xxxxx Number2: +7xxxxx|test test
В данном случае меткой является знак "|" Программист открывает файл, функцией explode разбивает строку на массив (через метку), и получает данные, заведомо зная что на первой позиции у него id, на второй статус и так далее..
Но к такому методу прибегают тогда, когда запись может уместиться в одну строчку, и программист знает что одна строка == одной записи. У Вас же имеется тектовое поле, которое может содержать как перевод коретки на новую строку, так и "случайным образом" туда может попасть ваша метка. В таком случае удобнее и практичнее будет использовать какую либо легкую базу данных - sqlite яркий пример такой.