Skip Navigation Links
Novas Tecnologias
Ferramentas Adicionais
Ferramentas Adicionais


Dica No :
298
Assunto : Visual Basic
Titulo: Manipulação de Strings com VB 6

Gostou do texto ? Vote e dê sua opinião! Pontuação atual :

Translate this page now :






Adicione aos Favoritos!
BlogBlogs Rec6 Linkk Ueba Technorati Delicious DiggIt! StumbleUpon



Assim como na dica sobre strings no .NET, o VB 6 também sofre com o mesmo problema na concatenação de strings : O excesso de realocações de memória causa uma grande lentidão no processo de concatenação de strings.

Veja um exemplo :

res = ""
For i = 1 to 10000: res = res & Str(i): Next

Esse trecho de código sofre com a necessidade de realocar a variável RES a cada concatenação realizada.

Para solucionar este problema podemos pré-alocar o espaço da string que necessitamos e alterar a string contida neste espaço pré-alocado. Veja um exemplo :


Dim res As String
Dim i As Long
Dim index As Long

' Faz a alocação de 90000 caracteres
res = Space(90000)
' Define um indice para controlar o preenchimento da string
index = 1

' A concatenação será feita com todos os valores de I, apenas como exemplo
For i = 1 to 10000
substr = Str(i)
length = Len(substr)
' Aqui o truque : A atribuição a função MID$ gera uma alteração na string
' original
Mid$(res, index, length) = substr
' O indice dentro da string tem que avançar para a próxima posição livre
'da string
index = index + length
Next
' Apaga os caracteres que estiverem sobrando (espaços, no ex. um trim tb
' resolveria)
res = Left$(res, index - 1)



Nome :
E-mail:
Comentarios :
 
 
Os Últimos Comentários
data: 5/18/2017 8:24:00 AM
nome: lnFIVOBqsh
email: jimos45812rt1@hotmail.com
comentário:
PoaDpy http://www.LnAJ7K8QSpkiStk3sLL0hQP6MO2wQ8gO.com

data: 1/31/2017 11:55:00 AM
nome: mWLPIuAnObY
email: derby451@hotmail.com
comentário:
Gdh6bw http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

data: 1/29/2017 9:26:00 AM
nome: LFbvPtRUVUdHsNTa
email: derby451@hotmail.com
comentário:
D2Ndbb http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

data: 1/29/2017 9:26:00 AM
nome: OGVUKgbqml
email: jogcbfn@hotmail.com
comentário:
hOHVKX http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

data: 1/7/2017 11:59:00 PM
nome: maADwgzBiTd
email: jfvynms4281rt@hotmail.com
comentário:
YprfmN http://www.FyLitCl7Pf7ojQdDUOLQOuaxTXbj5iNG.com

 1  
Dicas
Dica do Dia
Receba Dicas Por Email
E-mail :  
 


 (help)
Aceito receber informativos do devASPNet, informações de eventos e treinamentos

Veja Quais Informativos Você Receberá

Pesquisar Dicas
Pesquisar Artigos, Dicas e Noticias

Banco de Dados
Algumas Entrevistas
Links Importantes

Búfalo Informática, Treinamento e Consultoria
R. Alvaro Alvim, 37/920 Centro - Cinelândia - Rio de Janeiro Cep: 20031-010
Tel : (21) 2262-1368 (21) 9240-5134 E-mail : Contato@bufaloinfo.com.br