Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Membaca Fail Teks Tempatan dalam Pelayar Web?

Bagaimanakah Saya Boleh Membaca Fail Teks Tempatan dalam Pelayar Web?

Susan Sarandon
Susan Sarandonasal
2024-12-24 18:24:11825semak imbas

How Can I Read a Local Text File in a Web Browser?

Cara Membaca Fail Teks Setempat dalam Penyemak Imbas

Apabila cuba melaksanakan pembaca fail teks ringkas menggunakan XMLHttpRequest, ia mungkin tidak berfungsi dengan betul. Artikel ini meneroka isu yang berpotensi dan menyediakan penyelesaian untuk membetulkannya.

XMLHttpRequest Exception 101

Apabila permintaan XMLHttpRequest dibuat dengan laluan fail setempat, ia mungkin menghasilkan Exception 101. Ini berlaku kerana pelayar moden mengehadkan akses sistem fail langsung dengan ketat. Untuk memintas perkara ini, elakkan menggunakan laluan fail:///.

Api Ambil (Alternatif kepada XMLHttpRequest)

Pendekatan yang lebih moden dan mesra pengguna untuk mendapatkan semula data daripada URL ialah API Ambil, diperkenalkan dalam JS. Kod berikut menunjukkan penggunaannya:

fetch("myText.txt")
  .then((res) => res.text())
  .then((text) => {
    // Process the text
   })
  .catch((e) => console.error(e));

Konfigurasi XMLHttpRequest untuk Fail Setempat

Untuk permintaan fail tempatan menggunakan XMLHttpRequest, anda perlu menyemak kedua-dua status 0 dan 200 kerana status tidak dikembalikan daripada pelayan web:

function readTextFile(file) {
  var rawFile = new XMLHttpRequest();
  rawFile.open("GET", file, false);
  rawFile.onreadystatechange = function () {
    if(rawFile.readyState === 4)  {
      if(rawFile.status === 200 || rawFile.status == 0) {
        var allText = rawFile.responseText;
        console.log(allText);
       }
    }
  }
  rawFile.send(null);
}

Menentukan Fail Laluan

Apabila menggunakan XMLHttpRequest dengan fail tempatan, adalah penting untuk menentukan fail:// protokol dalam nama fail:

readTextFile("file:///C:/your/path/to/file.txt");

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membaca Fail Teks Tempatan dalam Pelayar Web?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn