Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

soulforjah

Arquivo de acesso aleatório

Recommended Posts

Prezados,

 

tenho trabalho muito com escrita e leitura de arquivos texto para log, controle, buffer, etc... tem quebrado um galhão... mas anda muito lento...

 

Problema 1:

 

tem arquivos com mais de 80mil linhas e presico procurar um registro dentro dele

 

se este registro etiver na ultima linha minhas pesquisa duram uma media de 15 minutos...isso para uma aplicação web é quase que insustentável..

 

Minha idéia é "Arquivo de acesso aleatório":

 

 

transformar este arquivo de acesso sequencial em um arquivo de acesso aleatório

 

Problema 2:

 

Não encontrei informação nenhuma quanto a esta solução

 

se alguem souber de algo por favor postem... continuarei pesquisando e pensando... se eu conseguir algo posto tbm..

 

abrção

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vinicius Ianni, essa seria uma solução, mas não queria transformar este arquivo txt para um banco de dados toda vez qu este for atualizado, o que acontece em media de 1 em 1 hora.

 

PessoAll,

Por isso sei de metodos, em outras linguagens, do tipo GET, que acessa o arquivo e busca uma string dentro do arquivo.... como o select faz num bd...

 

Um getFile da vida... mas não acho nada na net... alguem tem conhecimento disto?

 

grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vinicius Ianni,

Dei uma estudada nestes, mas pelo que entendi não me atendem...

pelo que entendi o GetFile seta o arquivo e permique que eu "trabalhe" com os atributos.

Jah com o textstream eu consigo buscar uma informação no arquivo, mas atraves daquele loop... que é o que eu quero evitar...

Compartilhar este post


Link para o post
Compartilhar em outros sites

dá uma olhada neste exemplo, você usa um while not fsofile.AtEndOfStream e depois dá um readline, e joga ele num Split, depois pode acesar o

array

 

<% Option Explicit
' declaro as variaveis
Dim fso, fsofile,varpesquisa,varcaminho,contador,linha,icampo

' recupero as variaveis
varpesquisa=Trim(request.form("pesquisa"))
' retiro o aspas simples
varpesquisa=Replace(varpesquisa,"'","")

' crio o FSO

Set fso=Server.createobject("Scripting.FileSystemObject")
' abro o arquivo txt
varcaminho=Server.MapPath("texto.txt")
Set fsofile=fso.opentextfile(varcaminho,1,true,false)
	if fsofile.AtEndOfStream = true then
		response.Redirect("busca_fso_form.asp?msgeof=1")
	else
		contador=0
		while not fsofile.AtEndOfStream = true
			linha=fsofile.readline
			icampo=Split(linha,"|",-1,1)
				if LCase(varpesquisa) = LCase(icampo(0)) then
					response.Write("<a href='"&icampo(1)&"'>"& icampo(0)&"</a><br>")
     			     contador=contador + 1
				end if
		wend
				response.Write("<br> Total de registros encontrados:") &contador
	end if
	fsofile.close
	Set fsofile=nothing
	Set fso= nothing
	%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.