Est-il possible de charger un type de fichier spécifique en utilisant Javascript?

J'ai une fonction qui charge un fichier sélectionné par l'utilisateur à l'aide de l'API de fichier Javascript, mais je veux limiter le type de fichier pouvant être chargé. Est-ce possible et comment puis-je faire ça? Donc, par exemple, je souhaite seulement que l'utilisateur puisse charger un fichier DAT. Voici ma fonction de chargement du fichier.

function readFile(file){ var reader = new FileReader(); var holder; var holderArray = []; var fileArray = []; reader.readAsText(file, "UTF-8"); reader.onload = function(){ file = reader.result; file = file.split(/\s+/g); formatFile(holderArray, 3, holder, file, fileArray); for(var i = 0; i < 2; i++){ formatFile(holderArray, 1, holder, file, fileArray); } for(var i = 0; i < 2; i++){ formatFile(holderArray, 2, holder, file, fileArray); } var meh = file.length / fileArray.length; for(var i = 0; i < meh; i++){ formatFile(holderArray, 5, holder, file, fileArray); } fileArray.pop(); plume = new Plume(fileArray[0], fileArray[4], fileArray[3]); $("#eventDate").val(plume.dateTime); $("#eventLat").val(plume.startLat); $("#eventLon").val(plume.startLong); $("#eventDictionary").val(plume.dict); $("#eventSymbol").val(plume.symbol); fileArray = fileArray.splice(5); plume.graphic = fileArray; } } $("#load").on("click", function(){ $("#eventNameInput").val(""); var selectedFile = $("#selectedFile"); selectedFile = selectedFile[0].files[0]; if(selectedFile){ readFile(selectedFile); $("#fileDetails").show(); } }) 

Sûr. Vous pouvez déclarer le type MIME dans l'attribut "accepter". Par exemple, cette entrée téléchargera des images:

 <input type="file" name="img" accept="image/*"> 

Pour .dat, vous pouvez le faire (.dat est un type MIME inconnu):

 <input type="file" name="img" accept=".dat">