Статья

Статья Объект Recordset и текстовые файлы ASP

Работа добавлена на сайт bukvasha.net: 2015-10-29

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 11.11.2024



Объект 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 "<table border = 1 width=200 bordercolor='#000000'>"

Response.Write "<tr><td align=center bgcolor='#EEEEEE'><b>Страна</b></td>"

Response.Write "<td align=center bgcolor='#EEEEEE'><b>Столица</b></td></tr>"

i = 0

'собственно вывод

Do While (Not rs.EOF) And (i < rs.PageSize)

Response.Write "<tr>"

Response.Write "<td align=center>" & rs("Страна") & "</td>"

Response.Write "<td align=center>" & rs("Столица") & "</td>"

Response.Write "</tr>"

rs.MoveNext

i = i + 1

Loop

nPages = rs.PageCount

'панель навигации по страницам

If nPages > 1 then

Response.Write "<tr><td colspan=2 align=center>"

If Page <> 1 then

Response.Write "<a href=""" & Request("script_name") & "?Page=" & Page - 1 & """>&lt;</a>"

Else

Response.Write "&lt;"

End If

For i = 1 to nPages

If i = 1 then

Response.Write " | "

End If

If i = Page then

Response.Write i & " | "

Else

Response.Write "<a href=""" & Request("script_name") & "?Page=" & i & """>" & i & "</a> | "

End If

Next

If Page <> nPages then

Response.Write "<a href=""" & Request("script_name") & "?Page=" & Page + 1 & """>&gt;</a>"

Else

Response.Write "&gt;"

End If

Response.Write "</td></tr>"

End If

Response.Write "</table>"

rs.Close

Set rs = Nothing

%>

Пример работы скрипта:



Список литературы

Для подготовки данной работы были использованы материалы с сайта http://www.activex.net.ru/



1. Реферат История российской биржи
2. Реферат на тему Abortions Essay Research Paper Controversy of AbortionsThe
3. Реферат Система Поля Брэгга
4. Реферат на тему Holocaust Essay Research Paper The Holocaust is
5. Контрольная_работа на тему Гипертекстовая технология Табличные процессоры Exel Создание базы данных картотеки книг
6. Реферат на тему Наследственные нарушения метаболизма
7. Реферат Лексическая синонимия в английском языке
8. Реферат на тему Основні теоретичні аспекти торгового права
9. Реферат на тему Seminole Essay Research Paper The SeminolesThe Seminole
10. Курсовая Анализ методов прогнозирования