hola a todos
como puedo hacer con javascript crear ,abrir , leer y escribir archivos txt
ayudenme con un ejemplo por favor
gracias de antemano
| |||
manejo de ficheros hola a todos como puedo hacer con javascript crear ,abrir , leer y escribir archivos txt ayudenme con un ejemplo por favor gracias de antemano
__________________ javier |
| |||
Hola Jayapata12 , JavierB : yo encontré este ejemplo perdido en una carpeta. Por supuesto, funciona en IE con Windows, pero no sé en que versiones y configuraciones de seguridad. Coincido en que no estaría mal conocer otra solución al problema. saludos furoya |
| |||
claro que esto solo sirve de manera locar por que javascript se ejecuta en el cliente aqui les pongo el codigo que encontre para estas cosas function CreateFile() { var fso, tf; fso = new ActiveXObject("Scripting.FileSystemObject"); tf = fso.CreateTextFile("c:\\archprue.txt", true); // Escribir una línea con un carácter de nueva línea. tf.WriteLine("Probando 1, 2, 3.") ; // Escribir tres caracteres de nueva línea en el archivo. tf.WriteBlankLines(3) ; // Escribir una línea. tf.Write ("Esto es una prueba."); tf.Close(); }
__________________ javier |
| |||
Sí. Estos códigos son más para usar en documentos .HTA o .HTT que en un .HTM; pero tu comentario tampoco estuvo desubicado, xknown. Hay mucha gente que recién empieza con javascript y para ellos no debe se algo tan obvio. Una aclaración sobre mi mensaje anterior; y es que no debería estar allí. Escribí el texto en el editor y cuando fui a pegar el código descubrí que era “muy borrador” ( lleno de comentarios y lineas “para probar” ) así que me arrepentí. No sé en qué momento hice un click donde no debía y el mensaje se envió (incompleto). Esto me pasa por tener varios editores abiertos al mismo tiempo, después no sé cuál mandé o cual no debí mandar. Ahora que lo veo, me siento obligado a postear lo que “prometí”. Que seguro está sacado del mismo tutorial donde encontraste el tuyo, Jayapata12, porque veo que se parece mucho. Una última sugerencia: si van a probar los scripts, desactiven los antivirus. Cuando un F.S.O intenta escribir un documento, a estos programas les da la histeria y empiezan a saltar alertas, stops críticos, confirmaciones; cuando no terminan cerrando todo y escaneando el disco.
Código:
Agrego otro código. También abre por omisión en el mismo directorio donde está la página; pero no modifica ni guarda, y el directorio se puede cambiar, claro. Si el .TXT no existe en esa ruta, abre uno nuevo para mandarlo ahí.<html> <head> <title> MANIPULAR ARCHIVOS.</title> <script> var fso, f1, f2, s; var raiz = unescape(location.href.substring(0, location.href.substring(0, location.href.length-1).lastIndexOf( '/' )+1)).split("file:///").join(""); function CreateFile(){ fso = new ActiveXObject("Scripting.FileSystemObject"); f1 = fso.CreateTextFile(raiz+"archprueCrea.txt", true); window.location.reload(); } function WriteFile() { var fso, tf; fso = new ActiveXObject("Scripting.FileSystemObject"); tf = fso.CreateTextFile(raiz+"archprueEscr.txt", true); // Escribir una línea con un carácter de nueva línea. tf.WriteLine("Probando 1, 2, 3.") ; // Escribir tres caracteres de nueva línea en el archivo. tf.WriteBlankLines(3) ; // Escribir una línea. tf.Write ("Esto es una prueba de escritura."); tf.Close(); window.location.reload() } function ReadFiles() { var fso, f1, ts, s, cont; var ForReading = 1; fso = new ActiveXObject("Scripting.FileSystemObject"); f1 = fso.CreateTextFile(raiz+"archprueLee.txt", true); // Escribir una línea. f1.WriteLine("Hola a todos"); f1.WriteBlankLines(1); f1.Close(); // Leer los contenidos del archivo. ts = fso.OpenTextFile(raiz+"archprueLee.txt", ForReading); s = ts.ReadLine(); cont="Contenido del archivo= '" + s + "'"; ts.Close(); alert(cont); window.location.reload(); } var fso, f1, f2, s; function MoveFile1() { fso = new ActiveXObject("Scripting.FileSystemObject"); f1 = fso.CreateTextFile(raiz+"archprueMueve.txt", true); // Escribir una línea. f1.Write("Esto es una prueba para mover archivo."); // Cerrar el archivo para la escritura. f1.Close(); } function MoveFile2() { // Obtener un identificador para el archivo en la raíz de C:\. f2 = fso.GetFile(raiz+"archprueMueve.txt"); // Mover el archivo al directorio \tmp. f2.Move(raiz+"carpprue/archprueMueve.txt"); window.location.reload() } var fso, f1, f2, s; function CopyFile1() { fso = new ActiveXObject("Scripting.FileSystemObject"); f1 = fso.CreateTextFile(raiz+"archprueCopia.txt", true); // Escribir una línea. f1.Write("Esto es una prueba de copia."); // Cerrar el archivo para la escritura. f1.Close(); } function CopyFile2() { // Obtener un identificador para el archivo en la raíz de C:\. f2 = fso.GetFile(raiz+"archprueCopia.txt"); // Copiar el archivo a \tmp. f2.Copy (raiz+"carpprue/archprueCopia.txt"); } var fso, f1, f2, s; function DeleteFile1() { fso = new ActiveXObject("Scripting.FileSystemObject"); f1 = fso.CreateTextFile(raiz+"archprueBorrado.txt", true); f1.Close(); } function DeleteFile2() { // Obtener un identificador para el archivo en la raíz de C:\. f2 = fso.GetFile(raiz+"archprueBorrado.txt"); // Eliminar los archivos. f2.Delete(); } function CreateFolder() { var fso; // Obtener instancia de FileSystemObject. fso = new ActiveXObject("Scripting.FileSystemObject"); // Crear una carpeta nueva con el objeto FileSystemObject. fso.CreateFolder (raiz+"carpprue"); } </script> <style> </style> </head> <body> <h2>Manipular archivos de texto. (<tt> <script> document.write(raiz); </script></tt> ) </h2> <input type=button onclick=CreateFile() value="Crear arch. texto"> <p> Crea un archivo "<tt>archprueCrea.txt</tt>". <hr> <input type=button onclick=WriteFile() value="Crear y escr. arch. texto"> <p> Crea un archivo "<tt>archprueEscr.txt</tt>". <p> con el texto <pre> Probando 1, 2, 3. Esto es una prueba de escritura. </pre> <hr> <input type=button onclick=ReadFiles() value="Crear, escr. y leer arch. texto"> <p> Crea un archivo "<tt>archprueLee.txt</tt>". <p> con el texto <pre> Hola a Todos </pre> y lee el contenido para mostrarlo en un <tt>alert</tt>. <hr> <input type=button onclick=MoveFile1() value="Crear arch. p/mover"> <p> Crea un archivo "<tt>archprueMueve.txt</tt>". <p> con el texto <pre> Esto es una prueba para mover archivo. </pre> <input type=button onclick=MoveFile2() value="Mover arch. texto"> <p> y lo mueve a una carpeta <tt>"/carpprue"</tt>.<br> (Si la carpeta no existe, crear con <input type=button onclick=CreateFolder() value="Crear carpeta"> ) <hr> <input type=button onclick=CopyFile1() value="Crear arch. p/copiar"> <p> Crea un archivo "<tt>archprueCopia.txt</tt>". <p> con el texto <pre> Esto es una prueba de copia. </pre> <input type=button onclick=CopyFile2() value="Copiar arch. texto"> <p> y lo copia a una carpeta <tt>"/carpprue"</tt>. <hr> <input type=button onclick=DeleteFile1() value="Crear arch. p/eliminar"> <p> Crea un archivo "<tt>archprueBorrado.txt</tt>". <p> <input type=button onclick=DeleteFile2() value="Eliminar arch. texto"> <p> y lo elimina. <p> </body> </html>
Código:
Estaba pensando como un LOG que permitía seleccionar texto de una página y en la misma operación se abría el archivo .TXT para pegar y guardar.function AbreTXT(){ nombre = 'Mi%20Documento%20Texto.txt'; raiz1 = location.href.substring(0, location.href.substring(0, location.href.length-1).lastIndexOf('/') + 1); raiz2 = prompt("¿ Abre el documento con esta dirección, o desea escribir otra ?",raiz1 + nombre); window.location.href = 'view-source:' +raiz2 ; } Si metemos la ruta elegida por el usuario en una cookie hasta podríamos usar esto en una página Web de verdad. Si, sí, en Windows con Internet Explorer. saludos furoya |