ローカルのテキスト(shift-jis)ファイルを
html上で使用することがあったのでメモ
まずはファイル選択ができるHTMLを作成します。
html上で使用することがあったのでメモ
まずはファイル選択ができるHTMLを作成します。
<head> </head> <body> <input id="file" type="file" value="ファイル選択" /> <div id ="finfo"></div> <div id ="result"></div> </body>
次にFileAPIを使います。対応しているブラウザじゃないと動きませんが
chrome、FireFoxあたりは動作確認しました
サンプルコードでは選択可能ファイルは1つだけです
shift-jis以外の場合は8行目の'Shift-Jis’を変更してください
デフォルトUTF-8です
ファイル選択ボタンからファイル選択するとすると 変数outputにファイル内容が格納されます
chrome、FireFoxあたりは動作確認しました
サンプルコードでは選択可能ファイルは1つだけです
shift-jis以外の場合は8行目の'Shift-Jis’を変更してください
デフォルトUTF-8です
ファイル選択ボタンからファイル選択するとすると 変数outputにファイル内容が格納されます
<script> document.querySelector("#file").addEventListener('change', function(e) { // File APIを利用できるかをチェック if (window.File) { var input = document.querySelector('#file').files[0]; var reader = new FileReader(); // ファイルの内容をテキストとして取得 reader.readAsText(input, 'Shift-Jis'); reader.addEventListener('load', function(e) { var output = reader.result; if (output === null){ output = ""; } var header = "[FileName] :" + input.name; header +="[size]" + input.size + "bytes"; document.querySelector("#finfo").innerHTML = header; document.querySelector("#result").innerHTML = escbr(output); } }, true); } }, true); //HTMLエスケープと改行 function escbr(str) { return str .replace(/&/g, '&') .replace(/</g, "<") .replace(/>/g, ">") .replace(/"/g, '"') .replace(/'/g, ''') .replace(/\r?\n/g, "<br />"); } </script>
SAMPLE
エンコード:
ここにファイルをドロップ
【結果】
0 件のコメント:
新しいコメントは書き込めません。