a.html 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta
  6. name="viewport"
  7. content="width=device-width, initial-scale=1.0"
  8. />
  9. <title>Document</title>
  10. </head>
  11. <body>
  12. <input type="file" />
  13. <textarea id="fileContent"></textarea>
  14. <button id="save">Save File</button>
  15. <script>
  16. const fileName = document.getElementById('fileName');
  17. const fileContent = document.getElementById('fileContent').value;
  18. const saveBtn = document.getElementById('save');
  19. saveBtn.addEventListener('click', () => {
  20. saveFile();
  21. });
  22. function saveFile() {
  23. console.log(221);
  24. window.webkitRequestFileSystem(
  25. TEMPORARY,
  26. 1024 * 1024 /*1MB*/,
  27. onInitFs,
  28. errorHandler
  29. );
  30. function onInitFs(fs) {
  31. console.log(111);
  32. // 获取fileSystem 对象
  33. const fileSystem = fs;
  34. // 获取文件名称
  35. const name = fileName.value;
  36. console.log(fs, fileName.value, 22222);
  37. // 创建文件
  38. fileSystem.root.getFile(
  39. name,
  40. { create: true },
  41. function (fileEntry) {
  42. // 创建文件写入流
  43. fileEntry.createWriter(function (fileWriter) {
  44. fileWriter.onwriteend = () => {
  45. // 完成后关闭文件
  46. fileWriter.abort();
  47. };
  48. // 写入文件内容
  49. const content = new Blob([fileContent]);
  50. fileWriter.write(content);
  51. });
  52. },
  53. errorHandler
  54. );
  55. }
  56. function errorHandler(e) {
  57. console.log('Error:', e);
  58. }
  59. }
  60. </script>
  61. </body>
  62. </html>