45763 (762154)
Текст из файла
Объект Recordset и текстовые файлы (ASP)
Христофоров Юрий
В этой статье речь пойдет о построении объекта Recordset на основе информации из текстового файла. Сталкиваясь с задачей представления данных из текстовых файлов (с поддержкой сортировок по нескольким полям, разбиением набора данных по страницам) возникает вопрос: как решить данную задачу наиболее просто? Первый вариант решения - использование массивов. Второй вариант, о котором и пойдет речь, - создание объекта Recordset и дальнейшая работа с ним.
Постановка задачи:
Есть текстовый файл (country.txt), который представляет собой набор записей вида: Страна,Столица. Необходимо вывести постранично (5 записей на страницу) в виде HTML таблицы содержимое этого файла с сортировкой по полю Страна.
ASP-скрипт, который осуществляет этот вывод:
| <% option explicit Response.Expires = 0 Dim fs, fd, buffer, rs, arrTxT, Page, i, nPages 'создаем объект Recordset Set rs = Server.CreateObject("ADODB.Recordset") rs.Fields.Append "Страна", 200, 255 rs.Fields.Append "Столица", 200, 255 rs.Open Set fs = Server.CreateObject("Scripting.FileSystemObject") Set fd = fs.OpenTextFile(Server.MapPath("country.txt"), 1) 'построчно считываем содержимое файла Do While (Not fd.AtEndOfStream) 'добавляем строку rs.AddNew buffer = fd.ReadLine arrTxT = Split(CStr(buffer), ",") rs("Страна") = arrTxT(0) rs("Столица") = arrTxT(1) rs.Update Loop Set fs = Nothing 'сортируем по полю Страна rs.Sort="Страна" 'по 5 записей на страницу rs.PageSize = 5 if Request.QueryString("Page") <> "" then Page = CInt(Request.QueryString("Page")) else Page=1 end if If rs.PageCount > 0 Then rs.AbsolutePage = Page Else Page = 0 End If Response.Write " Response.Write " |
| Страна | "Столица | "
| " & rs("Страна") & " | "" & rs("Столица") & " | "
| " |
rs.Close
Set rs = Nothing
%>
Пример работы скрипта:
Список литературы
Для подготовки данной работы были использованы материалы с сайта http://www.activex.net.ru/
Характеристики
Тип файла документ
Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.
Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.
Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.















