我正在使用Javascript FileReader在浏览器中加载图像: e = e.originalEvent; e.dataTransfer.dropEffect = ‘copy’; this.documentFile = e.dataTransfer.files[0]; var reader = new FileReader(); reader.onloadend = function () { if (reader.result) { console.log(reader); $(‘#theImage’).attr(‘src’, reader.result); } }; reader.readAsDataURL(this.documentFile); 这很好用。 我现在想获得图像的原始文件名,但我不知道如何在互联网上查找我也找不到任何东西? 有谁知道如何通过FileReader获取文件名? 欢迎所有提示!
[编辑]我用D3解决了这个问题,谢天谢地! 所以我有一个看起来像这样的csv文件,我需要将本地csv文件导入到我的客户端javascript: “L.Name”, “F.Name”, “Gender”, “School Type”, “Subjects” “Doe”, “John”, “M”, “University”, “Chem I, statistics, English, Anatomy” “Tan”, “Betty”, “F”, “High School”, “Algebra I, chem I, English 101” “Han”, “Anna”, “F”, “University”, “PHY 3, Calc 2, anatomy I, spanish 101” “Hawk”, “Alan”, “M”, “University”, “English 101, chem I” 我最终需要解析它并输出如下内容: Chem I: 3 (number of people […]
在html格式中,我们有一个图像字段,用于上传文件。 我从http://blog.teamtreehouse.com/reading-files-using-the-html5-filereader-api上学习了教程,从本地磁盘上传图像文件时效果很好。 但是假设我有一个图片urlhttp://www.google.com/images/logos/ps_logo2.png,并希望从远程url上传此图片,而不是从本地磁盘上传。 尝试从本地磁盘上传图像时, FileReader API运行良好,但我们如何使用它来按url加载图像? 通过将图像字段设置为轻松创建base64图像并将其用于预览,但是应该采用哪种工作流来上传图像使用jQuery或JavaScript的远程URL? 我怎么能够? 有什么建议?
我正在尝试从文件系统中读取二进制文件,然后使用JavaScript对其进行base64编码。 我正在使用FileReader API来读取数据和此处的base64编码器。 我的代码似乎接近工作,问题是生成的base64数据是错误的。 这是我到目前为止所得到的: function saveResource() { var file = $(“.resourceFile”)[0].files[0]; var reader = new FileReader(); reader.onload = function(evt) { var fileData = evt.target.result; var bytes = new Uint8Array(fileData); var binaryText = ”; for (var index = 0; index < bytes.byteLength; index++) { binaryText += String.fromCharCode( bytes[index] ); } console.log(Base64.encode(binaryText)); }; reader.readAsArrayBuffer(file); }; 这是我正在测试的文件(它是100×100蓝色方块): […]
我有点像绘图应用程序。 用户可以保存项目然后加载它们。 当我第一次加载一个文件(例如project1.leds)在应用程序中进行一些更改但没有保存它然后再次加载相同的文件(project1.leds)没有任何反应。 我不能多次加载同一个文件。 如果我加载其他文件,它的工作。 码: $(“#menu-open-file”).change(function(e){ var data=[]; var file = null; file = e.target.files[0]; console.log(file) var reader = new FileReader(); reader.onload = function(e){ data=JSON.parse(reader.result); x=data[0].SIZE[0]; y=data[0].SIZE[1]; if(x==15) x=16; if(x==30) x=32; if(x==60) x=64; if(y==15) y=16; if(y==30) y=32; if(y==60) y=64; createLeds(x,y,data,false,false); clearActiveTools(); var svg = $(‘#contener’).find(‘svg’)[0]; svg.setAttribute(‘viewBox’,’0 0 ‘ + x*20 + ‘ ‘ + […]
我试图通过rest API发布上传到HTML文件输入到网页的附件。 API文档指出post是直接二进制内容作为HTTP请求的主体,而不是表单文件上载。 我的代码如下: $(‘#_testButton’).bind(‘click’, function () { var file = document.getElementById(‘_testFile’).files[0] var reader = new FileReader(); reader.onload = function () { $.ajax({ url: ‘/attachmentURL’, type: ‘POST’, data: reader.result }) } reader.readAsBinaryString(file) }) 我需要这个来处理许多不同的mimeTypes,所以我没有在上面的代码中声明它。 但是,我尝试为.doc文件声明contentType:’application / msword’,并尝试使用processData:false和contentType:false。 数据将被发布到应该的位置。 但是,当我打开文件时,我收到一条消息,上面写着mimeType:带有空文件的application / x-empty或带有一堆二进制字符的文件。 我已经尝试过.doc文件和pdf文件,两者的结果是一样的。 有没有人知道我可以改变什么使这项工作?