Pregunta: | 17002 - IDENTIFICAR NOMBRES DE ARCHIVOS EN UN COMMON DIALOG |
Autor: | Brenda Viveros |
Hola:
Espero puedan ayudarme. Necesito identificar los nombres de archivos que se han elegido desde un common dialog y sinceramente no se como hacerla. Con el common dialog ya logre traer la direccion de los archivos.Por ejpl: "C:\Carpeta archivo1.txt archivo2.txt archivo3.txt" y asi hasta "n" archivos ahora lo que necesito es saber como puedo identificar cada nombre de archivo en una variable y poder manipularlos pues despues necesito poder abrirlos, leerlos y cerrarlos, sabiendo que el usuario no siempre elige el mismo numero y nombre de archivos. Espero que mi pregunta sea clara y puedan darme una solucion, pues no tengo a quien recurrir. De antemano Gracias. |
Respuesta: | SuNcO |
Aki esta lo ke buscas, se ve algo complicado pero no lo es, solo ocupas un texbox normal llamado text1 y cuatro text2, osea con index (comienza desde index 1)
Ah claro, ocupas el common dialog y un boton Aunke no lo entiendas usalo y veraz ke si separa los nombres elegidos Private Sub Command1_Click() Dim nombre(10) ' pongo matriz Com1.Flags = &H200 ' le digo ke acepte multiples archivos Com1.ShowOpen ' mostrar dialogo Text1 = Com1.filename ' poner el resultado en text1 i = 3 ' inicializar i For x = 1 To 10 nombre(x) = "" ' inicializar a NULL las variables de nombre Next x cuantos = 1 ' contador de comienzo Do ' aki reviso desde donde comenzar letra = Mid(Com1.filename, cuantos, 1) cuantos = cuantos + 1 Loop Until letra = " " ' salirse hasta ke encuentre un espacio en blanco contador = cuantos ' inicializo el contador Do Do letra = Mid(Com1.filename, contador, 1) ' leer caracter If letra <> " " Then ' chekar ke no sea espacio en blanco nombre(i) = nombre(i) + letra ' agregarlo al actual End If contador = contador + 1 ' aumentar contador Loop Until (letra = " ") Or (contador > Len(Com1.filename)) Text2(i - 2) = nombre(i) ' ponerlo en un textbox con index i = i + 1 ' aumentar el contador Loop Until contador > Len(Com1.filename) End Sub |
Respuesta: | Oswaldo Monagas |
El Common Dialog tiene una propiedad donde tu obtienes el nombre del archivo al cual se la a hecho click, aqui tienes un ejemplo:
'Declaraciones: Dim Ruta2 as string With CommonDialog3 .CancelError = True 'Causes error on Cancel .Filter = "Access (*.mdb)|*.mdb|All Files (*.*)|*.*" .FilterIndex = 1 .ShowOpen txtFileName.Text = .FileName ruta2 = txtFileName.Text End With Siendo CommonDialog3 el nombre del Common Dialog y lo que te interesa a ti particularmente es el .FileName o tambien puedes usarlo sin el With-End With donde el FileName debes ponerlo asi Nombre.FileName donde Nombre es el nombre del common dialog. Luego debes hacer que el archivo tenga una ruta y para eso debes declarar una variable que en le caso anterior en ruta2. Espero que lo entiendas si no puedes escribirme o usa la ayuda del VB, escribe Common Dialog en cualquier sitio de un proyecto, seleccionalo y pulsa F1 y te llevara a la ayuda MSDN donde encontraras un buen ejemplo. Saludos |