Añadir Ruta a un archivo de texto..
Saludos amigos, miren tengo elaborado el siguiente archivo:
El hecho es que el archivo se crea por defecto en la carpeta donde se creo la aplicacion, pero necesito que no se genere ahi, si no en una carpeta especifica....alguien me podria colaborar en ese procedimiento, muchas gracias por su tiempo prestado..... |
Oh algo importante , hay que tener en cuenta que el archivo es de tipo TextFile, y no TFileStream, no soy experto en archivos pero creo que si existen sus difrenecias, en fin, el caso es que lo tengo en TextFile, y ya...muchas gracias amigos....
|
Hola
Antes que otra cosa, ¿en que evento quieres hacerlo? :D:D:D Por otra parte, pues es obvio que se va a crear en el mismo directorio porque esta usando
Lo mas fácil es que uses una lectura a un archivo INI o al registro con la ruta donde quieres grabarlo de esa forma no tendras complicaciones posteriores. Salud OS |
Saludos Egostar, todo eso esta en el evento Onclick de un boton, en pocas palabras que cuando le de click al boton , ese archivo me lo genere en la carpeta donde yo quiero, o me de la opcion de elegirla, lo estaba intentando con el SelectDirectory, pero como te digo, soy novato en esta cuestion de archivos y me pierdo....y pues cree el archivo .dos, para que nadie se ponga a molestar ese archivo, por lo general siempre que lo dejas .txt, la gente es a mirar que hay, o a tratar de modificar...ok muchas gracias Egostar....
|
Hola BuRtOn, no se si estoy entiendo bien el asunto... ¿La idea que tienes es que se pueda elegir donde se guardará dicho archivo?
Si es eso... y sabiendo que es lo que estás guardando... yo diría que con menos razón no dejo que el archivo quede en cualquier lado. Lo correcto sería imposibilitar donde estará ¡Se trata de algo de seguridad, algo valioso!¡Necesariamente debe estar lo suficientemente oculto! Lo que te recomiendo es que trabajes o con la clase TIniFile o TRegistry para trabajar de forma más fácil con archivos INI y el registro respectivamente. La manera en que tu guardas el archivo es de más "bajo nivel" y el uso de estas clases te pueden ser mucho más fácil. Aun asi, si deseas seguir con la idea del SelectDirectory la forma de emplearlo es esta:
Si te fijas bien, el último parámetro (dir) es de tipo por valor. Por tanto en él queda guardado el directorio elegido. No te olvides de añadir en uses la unidad FileCtrl. Saludos, |
Saludos delphius, gracias por tu respuesta, si amigo trabaje la creacion de ese archivo de esa forma primitiva, por que solo pude leer esta mañana la forma de como crear archivos, y ese fue el mas sencillo, por que no me queda nada de tiempo.....Te agardecerias si tienes algun manual para manejar y crear los TiniFile o Tregisty que me dices, no se que tanto cambie el codigo a lo que yo tengo, si utilizo esa clase de archivos, no los utilice por que aun no encuentro un buen manual, y como te digo el tiempo esta en contra mia....aun asi no sabes como puedo darle la ruta a este archivo:
Agardezco tu ayuda delphius.gracias... |
El único manual que tengo es el F1 y la buena cantidad de hilos que tratan el tema.
Si buscaras encontrarás. No lo tomes a mal, pero hay que perderle el miedo al F1. Por cierto, sería bueno que edites el mensaje. No se si es mi navegador pero el último post tuyo es demasiado... horizontal:D y molesta la barra de desplazamiento;). Muchas gracias. Saludos, |
Oh lo olvidaba Delphius mira encontre este codigo del Selecdirectory:
pero que colcan el path que tu me dices en ,'', que mi indica eso ??? y pues despues que tenga la ruta seleccionada y almacenada en una variable en que parte de mi codigo, la aplico, para que me tome esa ruta ???, eso es lo que se me olvidaba preguntar....la persona que hizo este codigo declaro una variable tipo String llamada carpeta, creo que ahi es donde se alamcena la ruta y nombrearchtxt tambien es una variable de tipo string, pero nop se como combinar estos datos a mi codigo...y no se si es posible...gracias delphius... |
Cita:
Exacto, en Carpeta queda guardado el directorio seleccionado (si es que seleccionó, por ello la función devuelve un boolean: si seleccionó o cancelo). Y por lo que veo, en NombreArchTxt guarda el path completo (dirección y nombre de archivo) del archivo txt. El nombre del archivo por lo que se entiende está formado por TS más la fecha, hora y la extensión. ¿Como? Necesitas que te indique como debes adaptarlo? ¡Vamos hombre! Analiza el código primero antes de estar copiando:mad:... Saludos, |
Delphius si me guio por el codigo, por que estoy aprendiendo, y me toca probar las cosas que encuentro, y no se, pero mi fuerte no son archivos, pero aun asi los quiero manejar bien, mira ya soy capaz de elegir la ruta que deseo pero aun asi no me crea el archivo....se que no me falta mucho, pero ni idea que sea...por favor si tu o alguien me pueda hechar una manito se lo agradezco, no que me hagan el codigo, pero si que me puedan explicar que se puede hacer....miren lo que me qudo del codigo es lo siguiente:
otra forma que trate de direccionarlo fue esta:
como se pueden dar cuenta trate de direccionarlo de esa forma pero tampoco pude...estoy tratando e intentado haber que me funciona...todo es de probar y mirar las cosas, les agradesco que me colaboren y a ti delphius tambien gracias, siempre me induces a leer y leer...jejeje eso es bueno..... |
Aquí te añado un ejemplo más, es un fragmento de código que utilizo a diario:
Un Saludo. |
Cita:
Mi consejo respira.... Aqui otra otra pista, a ver si la descubres: ¿Y yo me pregunto, que se debe pasar al segundo parámetro del assingfile?:rolleyes: Vamos... piensa... ¿te parece correcto concatenar el directorio donde está el ejecutable con otro directorio? A mi eso no me cuadra... ¿porque no pruebas con uno en vez de dos? F1 BuRtOn, ¡F1! Saludos, |
Hola
Aunque sigo pensando que el path donde quieres crearlo no deberia ser estático, porque en este caso en específico si no tiene una partición D la maquina donde se ejecute el programa te va a dar un error. :rolleyes: Salud OS |
Cita:
Yo opine algo diferente amigo, para mi eso de que se seleccione donde guardar la información no me parece adecuado. Si el usuario es un tanto listo se va al directorio, busca el archivo y es capaz de abrirlo con el bloc de notas. Para mi, debe estar en un lugar oculto a la vista de los usuarios (al menos de algunos picaros). Se supone que estás guardando un dato que empleas como un medio de seguridad. Tienes razón al afirmar de que hay que chequear por el tema de los errores, pero eso puede sanarse (en cierta medida) si empleamos algún directorio que sabemos con bastante seguridad de que estará. Saludos, |
Delphius a cual AssignFile te refieres al de Marcos ? o al mio, por que el mio tiene los siguientes parametros:
La variable tipo archivo de texto, luego el extracFilepath, y a continuacion el nombre del archivo con su respectiva extension.... el de Marcos segun vi tiene los siguientes parametros:
Tiene el archivo que es F, y una variable donde alamcena algunos datos, aunque no le entendi muy bien lo que hizo en el codigo.... y estoy buscando por parametros del AssignFile, para tratar de guiarme, y Egostar, si supongo que la forma que mostre el codigo no es la correcta, solo que estoy probando haber a cual me acerco mas a mi problema....Gracis amigos, y gracias por ayudar a este novato.... |
Bueno me explico bien por que quiero una ruta especifica para el archivo que estoy creando, lo que sucede es que tengo una aplicaicon pequeña que me extrae el Id del disco duro, lo alamcena en un archivo, y me muestra el Id en un Edit, y tengo una aplicacion Grande que es la principal, alli va a existir un formulario de Seguridad que me va a pedir el Id del sico, y pues copio el Id de la aplicacion pequeña y lo pego en la aplicacion Grande....y alli comparo que lo que este en la aplicaicon Grande sea igual a lo de la aplicacion pequeña, en fin ese no es el problema, solo explico lo que tengo y por que la necesidad de redireccionar el archivo....por que el programita pequeño esta creado, para guardarlo en una memoria Usb, osea una aplicacion portable, y que en el momento que ejecute la aplicacion grande y me pida el id, pues solo tengo que sacar mi programita portable ejecutarlo, que me muestre el Id del disco y que me cree un archivo de texto en la carpeta dle programa garnde, para poder hacer las comparaciones....hay mas logica en el codigo de seguridad, solo que no lo expolico por que no es el tema del hilo, pero eso es lo que necesito, y pues el codigo que deje en este hilo, fue el mnual mas especifica de archivos, y por eso estoy mal en lo de redireccionar el archivo a una carpeta que yo quiera...no importa si no me toca elegir la ruta como con el selectDirectory, contal que pueda especificarle la ruta desde tiempo de diseño, todo esta bien....les agardezo su paciencia, y espero que me entiendan lo que explique...Gracias...
|
Cita:
Delphius, la verdad es que no entiendo lo que dices, si algún chistoso modifica/borra el archivo, pues se tendrá que validar que exista y si no actuar en consecuencia, es decir, solicitar que se registre de nuevo o joder el sistema y no iniciarlo, así de fácil...... Salud OS |
Exacto egostar, jejejeje, si no existe el archivo pues no deja iniciar la aplicaicon....y otras cositas mas que agregue....peor que no profundisare, para no hacer extenso el tema...lo que me quieres decir es algo asi:
O como le asigno a Id que es de tipo TextFile la ruta, como tu dices ??...eso es todo lo que quiero hacer.... |
Cita:
Es lo mismo unicamente lo que hace marcos es armar el path completo del archivo por partes. Tu lo buscas en el directorio donde está el ejecutable gracias a ExtractFilePath y Application.ExeName. AssingFile() lo que hace es asignar a la variable TextFile el archivo de modo que: AssingFile(F, 'el path completo hacia el archivo'); lo que hace es asignar ese archivo a la variable F. Después vendré el Reset, Rewrite, etc... Por favor BuRtOn, ve con calma. ¿En serio estás pensando en vender un aplicativo? ¿Y para mañana? BuRtOn, no es por nada... pero si estás teniendo problemas con esto, no quiero imaginar lo que te va a pasar con bases de datos. El manejo de archivos con AssingFile, reset, rewrite, y demás... es lo más básico en manejo de archivos. Por favor BuRtOn, un sano consejo: posterga la entrega del sistema a por lo menos dos semanas más. Estudia de una vez, lee la ayuda que proporciona F1. Para algo está el F1 y el problema que tu tienes es no haber ido a la ayuda. Prueba el sistema "de pe a pa", o como dicen en otros lados "desde la A hasta la Z". Calmate, respira... porque no estás concentrandote. Veo que tienes un apurón de la gran siete y un susto por hacer las cosas rápido. Y de ese modo no conseguirás nada bueno. Saludos, |
Ha perdon por lo del editor del codigo, no se que le pasa, pero aveces me sale asi, y se lo incomodo que es, aki envio de nuevo el codigo para mas comodidad....
Gracias por toda su ayuda... |
hola
Incluye en tu forma un TSaveDialog que encontrarás en el Tab Dialogs. Solo indicas donde quieres que se grabe y listo, ya tienes creado el archivo Id.dos, en la ruta que quieras. Salud OS |
Cita:
Cita:
En ese aspecto si tienes razón egostar, ya es problema del usuario si lo toca. Nomás yo decía que por las dudas, cuanto más oculto esté del usuario mejor. Saludos, |
Ok, delphius, yo estoy relax, la aplicacion ya la termine, y creeme que con la base de datos me fue muy bien, y logre todo lo que queria, y en cuanto a la validacion de datos, tambien quedo perfecto....esta creado para evitar cualquier erro de usuario...lo que pasa es que estoy con esta cuestion del archivito, y lo maximo que he leido es el siguiente manual:
http://delphiallimite.blogspot.com/2...exto-y_29.html juzga por ti mismo delphius...no es que sea bruto ni nada de esas cosas, solo que es muy basico lo que he visto en Delphi, y lo poco que he aprendido a sido con esfuerzo regaños de ustedes y de leer mucho....no tengo mucha experiencia, mi programacion aun es 100% estructurada... entiendeme un poco si por favor....Gracias por su tiempo prestado... |
Cita:
Salud OS PD, ya le diste una leída a mi último post? :) |
Hola
Cita:
Nada como tu y yo amigo, somos los jovenzuelos del club:D:D Saludos |
Cita:
Salud OS |
Jajajajajajajaa. conste que yo dije regaños, no regañon ni viejo......ni siquiera soy miembro premium...jejeje, solo tengo 20 años.....soy un niño....jejejejejej :D....
|
Cita:
Cita:
Ya les voy a dar a ustedes... los voy a mandar al geríatrico.:D No más le reto un poco que se de cuenta de que: 1. F1 es más que una categoría de carrera de autos 2. Cuando uno prepara la ejecución de un proyecto, debe añadirle SIEMPRE al menos dos semanas. Siempre surge algo a último momento. 3. Practicar más de lo que uno SIEMPRE piensa que sabe lo suficiente 4. Murphy tiene razón 5. El desarrollo del software no es cosa de un dia Saludos, |
Cita:
Salud OS |
Cita:
Salud OS |
Ha si la Teoria de la mala suerte...que cuando un 90% apunta a que todo sale bien, sale mal, y cuando todo apunta a que un 20% sale bien y un 80% sale mal, pues sale bien...jajajajaja.....
y creeme que no llevo 2 semans en la aplicaicon Delphius, llevo ya 1 mes y medio, y por que tan poco tiempo ?, soy yo y otro compañero en 2 pc's , y utilizamos una metodologia Dra....y es una aplicacion basica, solo maneja registros y algunas cuentas o contabilidad basica de ingresos.... Gracias Egostar ya vi tu post...lo voy a utilizar haber que sucede...ha y delphius, es que en el Rad 2007 la ayuda es un poco confusa, jejejeje.-..Gracias en fin amigos, son lo mejor de ese Club aunque me regañen :(... |
Jjejejejeje, muchas gracias Egostar, eso era lo que necesitaba, yamismo estoy analizando el codigo para una proxima oportunidad ya sepa como se hace...pero Egostar aun me queda una duda...con el codigo que me dijiste uno mismo escoge la ruta de donde quiere que se alamcene el archivo....pero si quiero hacerlo directamente desde el codigo, como indicaria la ruta ???, pues me quedo esa duda....Pero gracias, y gracias a ti Delphius....
|
Cita:
Shh... no digas nada que mi intención es marearlos a todos: Lo fácil es díficil y lo difícil es fácil. Esa técnica la uso con mis amigos... ya ves porque ando asi.:p:D Yo siempre me digo: quien se esfuerze en comprenderme verá una faseta equivocada de mi, y quien no me pretenda conocer verá una faseta real de mi. ¿O era alverrez la idea?:rolleyes: Saludos, |
Cita:
Cita:
Salud OS |
Hola
Yo creo que nuestro amigo Delphius necesita un buen descanso y compañia Tranquilo amigo Delphius, cuando se llega a tu edad estas cosas suelen pasar, por lo menos eso me han dicho.:D:D:D Saludos |
Cita:
Cita:
Ummm... tal vez eso es lo que provoca que me salga esa cana en la frente. ¡Y no soy viejo!:mad::D Saludos, |
Hola Burton, por lo que yo entiendo, tu no quieres que el usuario pueda darle el nombre a tu archivo, por lo que, creo que sería mejor utilizar SelectDirectory como estabas intentando hacerlo al principio.
Esta función de devuelve True si se Acepta la carpeta seleccionada, el primer parametro solo es el titulo que se mostrará, el segundo la ruta de donde quieres que seleccione si es '' entonces te aparecera en Mi PC, el tercer parametro la variable donde se te almacenara la ruta seleccionada la cual le pasas al AssignFile concatenando el nombre del archivo que quieres. Saluditos |
Una cosita mas, no te olvides añadir en tu uses la unidad FileCtrl.
Saluditos |
La franja horaria es GMT +2. Ahora son las 13:59:42. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi