FileReaderï¼readAsText() æ¹æ³
åºçº¿
广æ³å¯ç¨
èª 2015å¹´7æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
夿³¨ï¼ æ¤ç¹æ§å¨ Web Worker ä¸å¯ç¨ã
FileReader æ¥å£ç readAsText() æ¹æ³ç¨äºè¯»åæå®ç Blob æ File 对象çå
容ãå½è¯»æä½å®ææ¶ï¼readyState 屿§æ´æ¹ä¸º DONEï¼å¹¶è§¦å loadend äºä»¶ï¼å¹¶ä¸ result 屿§å
å«è¡¨ç¤ºæä»¶å
å®¹çææ¬å符串ã
夿³¨ï¼Blob.text() æ¹æ³æ¯ä¸ç§è¾æ°çåºäº Promise ç APIï¼ç¨äºå°æä»¶è¯»åä¸ºææ¬ã
夿³¨ï¼è¯¥æ¹æ³å°æ´ä¸ªæä»¶çå
容å è½½å°å
åä¸ï¼ä¸éå大æä»¶ã对äºå¤§æä»¶ï¼é¦éä½¿ç¨ readAsArrayBuffer()ã
è¯æ³
readAsText(blob)
readAsText(blob, encoding)
åæ°
blobencodingå¯é-
æå®ç¨äºè¿åæ°æ®çç¼ç çå符串ãå¦ææªæå®æ¤åæ°ï¼åé»è®¤æ åµä¸åå®ä¸º UTF-8ã
è¿åå¼
æ ï¼undefinedï¼ã
示ä¾
>HTML
<input type="file" onchange="previewFile()" /><br />
<p class="content"></p>
JavaScript
function previewFile() {
const content = document.querySelector(".content");
const [file] = document.querySelector("input[type=file]").files;
const reader = new FileReader();
reader.addEventListener(
"load",
() => {
// ç¶åè¿å°æ¾ç¤ºä¸ä¸ªææ¬æä»¶
content.innerText = reader.result;
},
false,
);
if (file) {
reader.readAsText(file);
}
}
ç»æ
è§è
| è§è |
|---|
| File API > # readAsDataText > |