Ver Mensaje Individual
  #7 (permalink)  
Antiguo 19/06/2005, 08:10
furoya
(Desactivado)
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ciudad Autónoma de Buenos Aires
Mensajes: 2.367
Antigüedad: 22 años, 3 meses
Puntos: 317
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:
<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>
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í.

Código:
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 ;
}
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.
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