Autor
		 | 
		
			Tema: ¿ Que estoy haciendo mal ?  (Leído 6,948 veces)
		 | 
	 
 
	
		
			
				
					
						| 
							Mr.Know
							
						 | 
						
							
							 
							
Hola Vereis tengo un archivo de texto, con 18 lineas, en cada linea un valor numerico y lo queria es abrir ese archivo de texto y cargarlo en un array, para luego poder usarlo. Yo lo he planteado asi: Sub leer_archivo() Dim faa As Integer Dim Array_D(1 To 18) As String * 60 Open Final For Input As #faa Array_D = Input(LOF(faa), #faa) Close #faa Label1.Text = Label1.Text & Array_D(1) Label2.Text = label2.Text & Arrai_D(1) End Sub 
 
 Y esque no se si es porque el array no acepta recibir datos o asi o hay algo mal declarado o no se. un saludo 
  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							360 Piratas: Un blog sobre la consola Xbox 360 Echarle un vistazo !   
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						| 
							Shell Root
							
						 | 
						
							
							 
							
Label1.Text = Label1.Text & Array_D(1) 
 
 No entiendo eso.  
  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							Te vendería mi talento por poder dormir tranquilo. 
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						| 
							Mr.Know
							
						 | 
						
							
							 
							
Label1.Text = Label1.Text & Array_D(1) 
 
 No entiendo eso. Pues hay lo que pretendo es, añadir al texto que tiene la Label 1 el primer elemeto del array que deberia ser la linea 1 del documento de texto. un saludo  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							360 Piratas: Un blog sobre la consola Xbox 360 Echarle un vistazo !   
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						
							.:BlackCoder:.
							
								 
								
								  Desconectado
								Mensajes: 388
								
								 
								Cada dia C++!!
								
								
								
								
								
								  
							 
						 | 
						
							
							 
							
no te falta algo como faa=freefile? Digo yo    Y creo que tas usando mal los arreglos... lo que necesitas es solo un string... porq segun lo que haces en: Array_D = Input(LOF(faa), #faa) 
 
 Me parece que esta mal... Yo haria algo como: un array de 18 strings (o enteros) y luego con un Do/Loop o un for, recorrer el archivo y darle el valor de la linia a cada posicion del array... Las posiciones pes las controlas con una variable... Pero creo que en ese codigo hay varios errores, no nada mas los arrays... Saludos  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							"No te esfuerzes por saber mas, esfuerzate por ser el mejor en lo que sabes... Y asi sabras mas" .:BlackCoder:. jajaja    
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						| 
							Mr.Know
							
						 | 
						
							
							 
							
no te falta algo como faa=freefile? Digo yo    Si, esque como quite trozos no relevantes pues yo creo que me lo he comido.  Me parece que esta mal... Yo haria algo como:
  un array de 18 strings (o enteros) y luego con un Do/Loop o un for, recorrer el archivo y darle el valor de la linia a cada posicion del array... Las posiciones pes las controlas con una variable...
  Saludos
 
 El problema esque no se como hacer que recorra el archivo linea a linea y la vaya almacenando en un valor del array... Mira he remplanteado el codigo y ya te lo pongo completo Sub buscar_partidos() On Error GoTo Error_Sub Dim archivo As String Dim temp As String, Ret As Long Dim Directorio As String Dim Final_A(1 To 18) As String * 60 ChDir App.Path ChDrive App.Path Directorio = App.Path If Len(Directorio) > 3 Then Directorio = Directorio & "\BD\"  archivo = Form1.equipo1 & "-" & Form1.equipo2 & ".txt"  Me.MousePointer = vbHourglass  temp = String(MAX_PATH, 0)  Ret = SearchTreeForFile(Directorio, archivo, temp)  If Ret <> 0 Then   Final_A = Left$(temp, InStr(1, temp, Chr$(0)) - 1) '*********  Else   MsgBox "Partido No encontrado", vbInformation  End If  Me.MousePointer = 0 Exit Sub Error_Sub: MsgBox Err.Description, vbCritical Me.MousePointer = 0 End Sub   
 
 y esta es la linea que no se que hacer y lo pongo a lo burro xD Final_A = Left$(temp, InStr(1, temp, Chr$(0)) - 1) 
 
 Lo que necesito es poder volcar linea a linea en el Array Final_A, siendo cada linea un elemento del Array. Recuerdo que cada lina del documento solo contiene 1 numero. un saludo y gracias  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							360 Piratas: Un blog sobre la consola Xbox 360 Echarle un vistazo !   
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						| 
							skapunky
							
						 | 
						
							
							 
							
Label1.Text = Label1.Text & Array_D(1) 
 
 No entiendo eso. Pues hay lo que pretendo es, añadir al texto que tiene la Label 1 el primer elemeto del array que deberia ser la linea 1 del documento de texto. un saludo Mal planteado, debes asignar al array cada línea antes de cerrar el archivo, no una vez lo cierras ya que sinó no se copiará nada en tu array. La idea es mientras el archivo no finalize, utilizando EOF, vayas leyendo línea por línea y guardandola en las posicines del array. Para que puedas hacerlo, busca en internet como: - Leer línea por línea de un archivo de texto. (hay muchos ejemplos) - Utilizar una estructura como FOR o como While (hay chorromiles ejemplos) Con esas dos cosas puedes hacerlo perfectamente, creo que se entiende la idea que te doy.  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						
							.:BlackCoder:.
							
								 
								
								  Desconectado
								Mensajes: 388
								
								 
								Cada dia C++!!
								
								
								
								
								
								  
							 
						 | 
						
							
							 
							
http://www.elguille.info/vb/cursos_vb/basico/basico12.htmYo no le pare mucho al tema de los archivos, pero pes al momento lo entendi... No me acuerdo bien pero si se que debes usar input de otra forma... Saludos...   
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							"No te esfuerzes por saber mas, esfuerzate por ser el mejor en lo que sabes... Y asi sabras mas" .:BlackCoder:. jajaja    
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						| 
							Mr.Know
							
						 | 
						
							
							 
							
Hola Perfecto creo que ya lo he entendido mejor     ahora haber que tal de esta manera: Veis algun fallo importante en el codigo ? Public Final As String ' Esta variable la calcule en otra funcion, pero la necesito en varias funciones asique la declaro como publica Sub leer_partido()     Dim MasNumeros(1 To 19) As String ' Tengo que usar String porque 18 lineas son numeros y 1 es alfanumerica     Dim i%     Dim nFic%     Dim inicial As Integer     inicial = 1     nFic = FreeFile     Open Final For Input As nFic     For i = 1 To 19         Input #nFic, MasNumeros(i)     Next     Close nFic     Contador1 = Val(Contador1) + Val(inicial) ' Necesito llevar la cuenta de cuantas veces se llama a esta funcion. 'Ahora voy volcando dato a dato del array en su correspondiente label     Label1.Caption = MasNumeros(1) & vbCrLf     Label2.Caption = MasNumeros(2) & vbCrLf     Label3.Caption = MasNumeros(3) & vbCrLf     Label4.Caption = MasNumeros(4) & vbCrLf     Label5.Caption = MasNumeros(5) & vbCrLf     Label6.Caption = MasNumeros(6) & vbCrLf     Label7.Caption = MasNumeros(7) & vbCrLf     Label8.Caption = MasNumeros(8) & vbCrLf     Label9.Caption = MasNumeros(9) & vbCrLf     Label10.Caption = MasNumeros(10) & vbCrLf     Label11.Caption = MasNumeros(11) & vbCrLf     Label12.Caption = MasNumeros(12) & vbCrLf     Label13.Caption = MasNumeros(13) & vbCrLf     Label14.Caption = MasNumeros(14) & vbCrLf     Label15.Caption = MasNumeros(15) & vbCrLf     Label16.Caption = MasNumeros(16) & vbCrLf     Label17.Caption = MasNumeros(17) & vbCrLf     Label18.Caption = MasNumeros(18) & vbCrLf     resultados.AddItem = MasNumeros(19) & vbCrLf ' Esto es un listbox y le meto datos alfanumericos ( una frase con numeros ) End Sub   
 
  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									En línea
								 | 
							  
							 
							360 Piratas: Un blog sobre la consola Xbox 360 Echarle un vistazo !   
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						
							BlackZeroX
							
								Wiki 
								
								  Desconectado
								Mensajes: 3.158
								
								 
								I'Love...!¡.
								
								
								
								
								
								  
								 
							 
						 | 
						
							
							 
							
Tu variable  Final no me convence pero bueno aya cada quien... Aqui lo dejo con fixeos por mi parte dejandolo mas Dinamico que el tuyo!¡. Private Sub leer_partido(ByVal StrPath$) If Dir(StrPath, vbArchive) = "" Then Exit Sub Dim MasNumeros$()   '   //  String Dim i%              '   //  Long Dim nFic#           '   //  Integer     nFic = FileSystem.FreeFile     Open StrPath For Input As nFic         Do While Not FileSystem.EOF(nFic)      '   //  Mientras no lleguemos al final leemos las lineas del archivo X.             ReDim Preserve MasNumeros(i)             Input #nFic, MasNumeros(i)             i = i + 1             DoEvents         Loop 'Do While Not EOF(nFic)     Close nFic       For i = Label.LBound To Label.UBound         If Information.IsNumeric(MasNumeros(i)) Then             Label(i).Caption = MasNumeros(i)         Else             resultados.AddItem = MasNumeros(i)         End If     Next     Contador1 = Contador1 + 1 End Sub   
 
 P.D.: Agregar una MATRIX de controles llamados Label Dulce Infierno Lunar!¡.  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
									« Última modificación: 15 Junio 2010, 11:26 am por BlackZeroX▓▓▒▒░░ »
								 | 
								
									 
									En línea
								 | 
							  
							 
							The Dark Shadow is my passion. 
						 | 
					 
				 
			 |  
		 
	 |  
	
		
		
			
				
					
						
							BlackZeroX
							
								Wiki 
								
								  Desconectado
								Mensajes: 3.158
								
								 
								I'Love...!¡.
								
								
								
								
								
								  
								 
							 
						 | 
						
							
							 
							
a se me paso igual puedes cargar o seguir cargando X label o descargar X label de la matrix solo leete un manual  Es Load() y unLoad() lo que debes usar!¡, despues de cargarlo este estara visible=False debes pasarlo a true y en una nueva posicion o se create en la posicion predeterminada!¡. OJO es una optativa!¡ para cargar mas lineas de una rchivo X y no crear TODOS los Labels en tiempo de diseñño en el IDE, igual puedes optar por. aqui te lo dejo mas optimizado y con lo que dije como codigo comentado!¡. Private Sub leer_partido(ByVal StrPath$): On Error Resume Next If Dir(StrPath, vbArchive) = "" Then Exit Sub Dim TMPLine$        '   //  String Dim i%              '   //  Long    de forma Pre esta en 0 Dim nFic#           '   //  Integer 'Dim tmpc#           '   //  Integer     nFic = FileSystem.FreeFile     Open StrPath For Input As nFic         Do While Not FileSystem.EOF(nFic)      '   //  Mientras no lleguemos al final leemos las lineas del archivo X.             Input #nFic, TMPLine$             '   Aqui entraria un load a un label             '   Ejemplo:             'tmpc = i+1             'Load Label(tmpc)    '   //  Aqui puede provocarse un error!¡. por eso uso On error resume next             'With Label(tmpc)             '    .Top = Label(tmpc - 1).Top + Label(tmpc - 1).Height + 5             '    .Left = Label(tmpc).Left             '    .Visible = True             'End With             If Information.IsNumeric(TMPLine$) Then                 Label(i).Caption = MasNumeros(i)             Else                 resultados.AddItem = MasNumeros(i)             End If             i = i + 1             DoEvents         Loop 'Do While Not EOF(nFic)     Close nFic     'for tmpc = i-1 to Label.ubound     '    unload  Label(tmpc)     'next     Contador1 = Contador1 + 1 End Sub   
 
 Ducle Infierno Lunar!¡.  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
									« Última modificación: 15 Junio 2010, 11:55 am por BlackZeroX▓▓▒▒░░ »
								 | 
								
									 
									En línea
								 | 
							  
							 
							The Dark Shadow is my passion. 
						 | 
					 
				 
			 |  
		 
	 |  
	 |  
 
	 
	
 
			 
			
				
					
						| Mensajes similares | 
					 
					
						 | 
						Asunto | 
						Iniciado por | 
						Respuestas | 
						Vistas | 
						Último mensaje | 
					 
					
						
							 
						 | 
						
							 
						 | 
						
							Pasar valores a URL metodo GET, que estoy haciendo mal?
							 
							.NET (C#, VB.NET, ASP)
						 | 
						
							TrashAmbishion
						 | 
						
							5
						 | 
						
							4,172
						 | 
						
							 
							
								30 Mayo 2012, 00:14 am 
								por seba123neo
							
						 | 
					 
					
						
							 
						 | 
						
							 
						 | 
						
							Alocacion dinamica de memoria; String, ¿Que estoy haciendo mal?
							 
							Programación C/C++
						 | 
						
							astinx
						 | 
						
							2
						 | 
						
							2,828
						 | 
						
							 
							
								 4 Junio 2012, 02:15 am 
								por astinx
							
						 | 
					 
					
						
							 
						 | 
						
							 
						 | 
						
							Que estoy haciendo mal con el Man In The Middle +
							 
							Hacking
						 | 
						
							danihack007
						 | 
						
							6
						 | 
						
							6,193
						 | 
						
							 
							
								27 Octubre 2013, 14:47 pm 
								por reygun30012
							
						 | 
					 
					
						
							 
						 | 
						
							 
						 | 
						
							Buscador que estoy haciendo falla en algo
							 
							PHP
						 | 
						
							z3nth10n
						 | 
						
							2
						 | 
						
							2,058
						 | 
						
							 
							
								12 Noviembre 2013, 16:56 pm 
								por z3nth10n
							
						 | 
					 
					
						
							 
						 | 
						
							 
						 | 
						
							Que estoy haciendo mal arreglo? (Solucionado)
							« 1 2 » 
							Programación C/C++
						 | 
						
							nolasco281
						 | 
						
							16
						 | 
						
							7,850
						 | 
						
							 
							
								 4 Febrero 2014, 06:58 am 
								por x64core
							
						 | 
					 
				 
			    |