在 JavaScript 中讀取文本文件時,若需精確獲取某一指定行的內容,主要有兩種常見思路:一是利用 IE 專屬的 ActiveXObject(Scripting.FileSystemObject 與 TextStream)進行逐行讀取;二是將整個文件內容一次性讀出,再透過字串分割(split)取得目標行。
IE 瀏覽器提供了 Scripting.FileSystemObject 元件,配合 TextStream 物件可實現對本地文本文件的逐行操作。核心方法包括:
OpenTextFile:開啟文件並返回 TextStream 物件SkipLine:跳過指定行數,直接定位到目標行ReadLine:讀取當前行內容此方式僅在 IE 環境下有效,現代瀏覽器因安全限制不再支援 ActiveXObject。
通用性更強的做法是使用 readAll 一次性讀取全部內容,再以換行符(\n 或 \r\n)分割成陣列,直接透過索引存取任意行:
var allText = textStream.ReadAll();
var lines = allText.split(/\r?\n/);
var targetLine = lines[lineIndex - 1]; // 陣列索引從 0 開始
此法不受瀏覽器限制,適合前端配合 File API 或後端 Node.js 環境使用。
在 ASP 伺服器端腳本中,TextStream 同樣是處理文本文件的主力工具,支援讀寫、指標移動、編碼轉換等豐富操作,開發者可參考 ASP 官方文檔深入了解。