【问题标题】:How to retrieve the contents of the file in a file uploader如何在文件上传器中检索文件的内容
【发布时间】:2020-05-24 10:20:22
【问题描述】:

我正在使用 html 标签制作文件上传器。我的表由 id(Primary Key)、Name varchar(50)、ContentType(显示文件的扩展名)和 Data varbinary(Max) 组成,它将存储文件的内容。下面是我的html:

     <tr>
     <td class="label" style="width:15%">
     Upload File
     </td>
     <td class="description" >
     <input type="file" id="FileUpload1" class="largeTextField" multiple="multiple"   
     style="width:260px;"/>
     <input type="button" id="btnUpload" value="Upload"  onclick="UploadFile()" />
     </td>
     <div class="validator" id="txtUploadFileVld" style="display: none">
     *</div>
     </tr>

和javascript函数UploadFile():

    function UploadFile() {

    var filename = $('input[type=file]').val().split('\\').pop();
    var filePath = $('#FileUpload1').val();
    var contenttype = $("#FileUpload1").val().split('.').pop();
    var AJAX = new AJAXsupport();
    AJAX.resetVar();
    AJAX.addData('id', id);
    AJAX.addData('Name', $('#FileUpload1').val().split('\\').pop());
    AJAX.addData('ContentType', $('#FileUpload1').val().split('.').pop());

    AJAX.addData('CLDone', 'UploadFile');
    var sucSave = function () {
        alert(AJAX.getMessage())



        }
    customSave(AJAX, sucSave);
     }

我可以通过我的函数访问文件名和内容类型。它们也正确地保存在数据库中。但我也想获取文件的内容并将其保存在数据库中。有人可以编辑我上面的代码来完成我的任务吗?我不知道我该怎么做。

【问题讨论】:

    标签: javascript asp.net file-upload


    【解决方案1】:

    访问文本文件的内容

    这是访问文本文件内容的一种方式。

    参考:How to read a local text file

    尝试使用 Node 执行此操作时,您需要安装 xmlhttprequest 包,因为 Node 本身不支持浏览器的 XHR API,然后只需要它:

    const XMLHttpRequest = require('xmlhttprequest').XMLHttpRequest;
    
    function readTextFile(file) {
        var rawFile = new XMLHttpRequest();
        rawFile.open('GET', file, false);
        rawFile.onreadystatechange = function () {
            if(rawFile.readyState === 4) {
                if(rawFile.status === 200 || rawFile.status == 0) {
                    var allText = rawFile.responseText;
                    console.log(allText);
                }
            }
        }
        rawFile.send(null);
    }
    
    readTextFile('file://C:/path/to/your-file/test-file.txt');
    

    希望这会有所帮助。

    【讨论】:

    • 我不想为此创建一个单独的函数。我想以某种方式修改我的代码以完成我的任务。
    猜你喜欢
    • 1970-01-01
    • 2011-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-19
    • 2016-04-08
    • 1970-01-01
    相关资源
    最近更新 更多