Eu tentei abrir um arquivo com
window.open("file:///D:/Hello.txt");
O browser não permite abrir um ficheiro local desta forma, provavelmente por razões de segurança. Eu quero usar os dados do arquivo's no lado do cliente. Como posso ler um ficheiro local em JavaScript?
O HTML5 fileReader facility permite que você processe arquivos locais, mas estes DEVEM ser selecionados pelo usuário, você não pode ir roteando sobre o disco do usuário procurando por arquivos.
Atualmente uso isso com versões de desenvolvimento do Chrome (6.x). Eu não'não sei que outros navegadores o suportam.
O Javascript normalmente não pode acessar arquivos locais em novos navegadores, mas o objeto XMLHttpRequest pode ser usado para ler arquivos. Então é realmente o Ajax (e não o Javascript) que está lendo o arquivo.
Se você quiser ler o arquivo abc.txt
, você pode escrever o código como:
var txt = '';
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function(){
if(xmlhttp.status == 200 && xmlhttp.readyState == 4){
txt = xmlhttp.responseText;
}
};
xmlhttp.open("GET","abc.txt",true);
xmlhttp.send();
Agora o txt
contém o conteúdo do arquivo abc.txt.