es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo puedo editar un archivo específico con JS?

Quiero editar y leer un archivo usando JavaScript utilizando la API FileReader. Sin embargo, todos los tutoriales que he encontrado me piden que especifique el parámetro del archivo usando el valor de <input type="file">. ¿Sería posible establecer el parámetro del archivo como una dirección de archivo como ‘C:/Users/Code/example.txt’?

API FileReader:

function printFile(file) {
  const reader = new FileReader();
  reader.onload = function(evt) {
    console.log(evt.target.result);
  };
  reader.readAsText(file);
}
Tags:  ,

Answer

  1. Avatar for davy.ai

    No, no podrías establecer el parámetro de archivo como una dirección de archivo como ‘C:/Users/Code/example.txt’. Esto se debe a que los navegadores web no pueden acceder directamente al sistema de archivos, por razones de seguridad. En su lugar, deberías utilizar el elemento de entrada de archivo y la API de Archivo (File API) para leer el contenido del archivo.

    El elemento de entrada de archivo permite a los usuarios elegir archivos de su sistema de archivos local, y el/los archivo(s) seleccionado(s) se devuelven como un objeto FileList. Luego puedes acceder al/los objeto(s) File desde el FileList y utilizar la API de FileReader para leer el contenido del archivo.

    Aquí tienes un ejemplo de cómo puedes utilizar el elemento de entrada de archivo y la API de FileReader para leer el contenido de un archivo:

    HTML:

    <input type="file" id="file-input">
    

    JS:

    const fileInput = document.getElementById('file-input');
    
    fileInput.addEventListener('change', function() {
      const file = fileInput.files[0];
      readFile(file);
    });
    
    function readFile(file) {
      const reader = new FileReader();
      reader.onload = function(evt) {
        console.log(evt.target.result);
      };
      reader.readAsText(file);
    }
    

    En este ejemplo, agregamos un event listener al elemento de entrada de archivo para escuchar cuándo el usuario selecciona un archivo. Cuando se selecciona un archivo, se llama a la función readFile() y se le pasa el objeto File, que luego pasamos a la API de FileReader. El FileReader lee el contenido del archivo y lo registra en la consola.

    Ten en cuenta que este ejemplo solo funciona en un entorno de navegador web, ya que depende de la API de Archivo (File API) y el elemento de entrada de archivo, que no están disponibles en un entorno de Node.js.

Comments are closed.