Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: NightMore en 25 Noviembre 2010, 15:33 pm



Título: Ayuda en visual basic 6.0 quiero saber como abrir un bloc de notas...
Publicado por: NightMore en 25 Noviembre 2010, 15:33 pm
Hola.quisiera saber como abrir un bloc de notas y leerlo en una caja de texto en visual basic 6.0.Alo que me refiero es que lo que tiene escrito el bloc de notas se pueda leer en una caja de texto.Gracias


Título: Re: Ayuda en visual basic 6.0 quiero saber como abrir un bloc de notas...
Publicado por: Shell Root en 25 Noviembre 2010, 15:44 pm
Código
  1. ' http://www.recursosvisualbasic.com.ar/htm/tutoriales/tutorial-basico7.htm#line-input
  2.  Dim mivariable As String
  3.  Open "c:\nombres.txt" For Input As #1
  4.    While Not EOF(1)
  5.      Line Input #1, mivariable
  6.    Wend
  7.  Close #1



Título: Re: Ayuda en visual basic 6.0 quiero saber como abrir un bloc de notas...
Publicado por: Psyke1 en 25 Noviembre 2010, 16:55 pm
Pero porque hay tanta alérgia a Google ?  :-(

http://goo.gl/PPGC5

DoEvents! :P


Título: Re: Ayuda en visual basic 6.0 quiero saber como abrir un bloc de notas...
Publicado por: avmiitxe en 25 Noviembre 2010, 17:39 pm
Hola.quisiera saber como abrir un bloc de notas y leerlo en una caja de texto en visual basic 6.0.Alo que me refiero es que lo que tiene escrito el bloc de notas se pueda leer en una caja de texto.Gracias

No le ayuden, mira si recien empiezas con la programacion apreende un poco mas y no pongas estas preguntas tontas


Título: Re: Ayuda en visual basic 6.0 quiero saber como abrir un bloc de notas...
Publicado por: NightMore en 25 Noviembre 2010, 18:18 pm
¬¬.No enpieso a programar recien.se muchas cosas solo esto es una duda.Su pongo que vos tampoco sabes tanto porque tenes 41 post.para los que saben mucho de programacion contestan casi todos los post eso quiere decir que sabe mucho ^^ no soy professional..pero algo se


Título: Re: Ayuda en visual basic 6.0 quiero saber como abrir un bloc de notas...
Publicado por: BlackZeroX en 25 Noviembre 2010, 19:00 pm
¬¬.No enpieso a programar recien.se muchas cosas solo esto es una duda.Su pongo que vos tampoco sabes tanto porque tenes 41 post.para los que saben mucho de programacion contestan casi todos los post eso quiere decir que sabe mucho ^^ no soy professional..pero algo se

Los Post no implican lo que sabes. apoco a la respuesta de Mr. Frogs, igual aquí mas manuales pegados en las ligas principales!¡.

Esta seía la forma en la que lo haria:

Código
  1.  
  2. Dim Int_FF%
  3. Dim ArrByt_vData()                      As Byte             ' // Opcion 1
  4. Dim ArrStr_vData$                                           ' // Opcion 2
  5. Const StrC_Dir$ = "C:\Archivot.txt"
  6.    If Dir(StrC_Dir, vbArchive) <> "" Then                  ' // Existe el archivo?.
  7.        Int_FF% = FreeFile                                  ' // Obtenemos un nuevo registro libre para su lectura.
  8.        Open StrC_Dir For Binary As Int_FF%                 ' // Me gusta mas la forma Binaria xd por que asi puedo controlar a mi gusto el archivo.
  9.            If LOF(Int_FF) > 0 Then
  10.                ReDim ArrByt_vData(0 To LOF(Int_FF%) - 1)   ' // Opcion 1
  11.                ArrStr_vData$ = Space(LOF(Int_FF%))         ' // Opcion 2
  12.                Get Int_FF%, 1, ArrByt_vData                ' // Opcion 1
  13.                Get Int_FF%, 1, ArrStr_vData$               ' // Opcion 2
  14.            End If
  15.        Close Int_FF%                                       ' // Cerrar Registro
  16.    End If
  17.  
  18.  

Dulces Lunas!¡.


Título: Re: Ayuda en visual basic 6.0 quiero saber como abrir un bloc de notas...
Publicado por: Dessa en 25 Noviembre 2010, 22:38 pm

Me gusta mas la forma Binaria xd por que asi puedo controlar a mi gusto el archivo.



Bueno, aparte de esto tambien parece mas rápida, por lo menos que Input(LOF) y Line Input

Bueno, aparte de esto Binary-Space(LOF) es mas rápido, por lo menos que Input(LOF) y Line Input




Código:

Option Explicit

Private Declare Function GetTickCount Lib "kernel32" () As Long

Function ArrStr_vData(StrC_Dir As String) As String

Dim Int_FF%
'Dim ArrByt_vData()                      As Byte             ' // Opcion 1
  
   If Dir(StrC_Dir, vbArchive) <> "" Then                  ' // Existe el archivo?.
       Int_FF% = FreeFile                                  ' // Obtenemos un nuevo registro libre para su lectura.
       Open StrC_Dir For Binary As Int_FF%                 ' // Me gusta mas la forma Binaria xd por que asi puedo controlar a mi gusto el archivo.
           If LOF(Int_FF) > 0 Then
               'ReDim ArrByt_vData(0 To LOF(Int_FF%) - 1)   ' // Opcion 1
               ArrStr_vData$ = Space(LOF(Int_FF%))         ' // Opcion 2
               'Get Int_FF%, 1, ArrByt_vData                ' // Opcion 1
               Get Int_FF%, 1, ArrStr_vData$               ' // Opcion 2
           End If
       Close Int_FF%                                       ' // Cerrar Registro
   End If
End Function

Function Input_LOF(StrC_Dir As String) As String
  
  If Dir(StrC_Dir, vbArchive) <> "" Then
    Open StrC_Dir For Input As #1
       If LOF(1) > 0 Then
         Input_LOF = Input(LOF(1), #1)
       End If
     Close #1
   End If

End Function

Function Line_Input(StrC_Dir As String) As String
  
  Dim linea As String
  If Dir(StrC_Dir, vbArchive) <> "" Then
    Open StrC_Dir For Input As #1
       If LOF(1) > 0 Then
         While Not EOF(1)
           Line Input #1, linea
           Line_Input = Line_Input & linea & vbNewLine
         Wend
        End If
     Close #1
   End If

End Function

Private Sub Form_Load()

Dim t As Long
Dim x As Long

Open "C:\Archivot.txt" For Output As #1
  For x = 1 To 150
    Print #1, "LINEA" & vbTab & x
  Next
Close #1


'---------------------------------------------------------------

t = GetTickCount

For x = 1 To 10000
  Call ArrStr_vData("C:\Archivot.txt")
Next

t = GetTickCount - t

MsgBox ArrStr_vData("C:\Archivot.txt"), , "ArrStr_vData   " & t

'---------------------------------------------------------------

t = GetTickCount

For x = 1 To 10000
  Call Input_LOF("C:\Archivot.txt")
Next

t = GetTickCount - t

MsgBox Input_LOF("C:\Archivot.txt"), , "Input_LOF   " & t

'---------------------------------------------------------------

t = GetTickCount

For x = 1 To 10000
  Call Line_Input("C:\Archivot.txt")
Next

t = GetTickCount - t

MsgBox Line_Input("C:\Archivot.txt"), , "Line_Input   " & t

'---------------------------------------------------------------

End Sub







Título: Re: Ayuda en visual basic 6.0 quiero saber como abrir un bloc de notas...
Publicado por: BlackZeroX en 26 Noviembre 2010, 20:51 pm
@Dessa si quieres medir la velocidad del codigo que deje debes eligir si deseas el String o el array de bytes...
Por eso le puse Opción 1 y Opción 2.., yo eligiria el Array de bytes por cuestiones de memoria...

Código
  1.               Get Int_FF%, 1, ArrByt_vData                ' // Opcion 1
  2.               Get Int_FF%, 1, ArrStr_vData$               ' // Opcion 2
  3.  


Título: Re: Ayuda en visual basic 6.0 quiero saber como abrir un bloc de notas...
Publicado por: Dessa en 26 Noviembre 2010, 22:34 pm
Editado, gracias BlackZeroX▓▓▒▒░░