相关疑难解决方法(0)

如何用Javascript打开本地磁盘文件?

我试着打开文件

window.open("file:///D:/Hello.txt");
Run Code Online (Sandbox Code Playgroud)

浏览器不允许以这种方式打开本地文件,可能是出于安全原因.我想在客户端使用该文件的数据.如何在Javascript中读取本地文件?

javascript

146
推荐指数
7
解决办法
44万
查看次数

如果输入长度不能被3整除,为什么base64编码需要填充?

在base64编码中填充的目的是什么.以下是维基百科的摘录:

"分配了一个额外的填充字符,可用于强制编码输出为4个字符的整数倍(或等效于未编码的二进制文本不是3个字节的倍数);这些填充字符必须在解码时丢弃,但仍然允许计算未编码文本的有效长度,当其输入二进制长度不是3个字节的倍数时(最后一个非填充字符通常被编码,使得它代表的最后一个6位块将为零在其最低有效位上填充,在编码流的末尾最多可能出现两个填充字符."

我写了一个程序,它可以base64编码任何字符串并解码任何base64编码的字符串.填充解决了什么问题?

base64 encoding

76
推荐指数
4
解决办法
6万
查看次数

base 64编码的有效字符范围

我对以下内容感兴趣:
是否有一个字符列表永远不会作为base 64编码字符串的一部分出现?
例如*.我不确定这是否会发生.如果原始输入实际上*是其中的一部分,那么编码方式会不同吗?

java regex base64 apache-commons

44
推荐指数
3
解决办法
4万
查看次数

FileReader()的Javascript承诺

我有以下HTML代码:

<input type='file' multiple>
Run Code Online (Sandbox Code Playgroud)

这是我的JS代码:

var inputFiles = document.getElementsByTagName("input")[0];
inputFiles.onchange = function(){
    var fr = new FileReader();
    for(var i = 0; i < inputFiles.files.length; i++){
        fr.onload = function(){
            console.log(i) // Prints "0, 3, 2, 1" in case of 4 chosen files
        }
    }
    fr.readAsDataURL(inputFiles.files[i]);
}
Run Code Online (Sandbox Code Playgroud)

所以我的问题是,如何使这个循环同步?首先等待文件完成加载然后转到下一个文件.有人告诉我使用__CODE__.但我不能让它发挥作用.这是我正在尝试的:

var inputFiles = document.getElementsByTagName("input")[0];
inputFiles.onchange = function(){
    for(var i = 0; i < inputFiles.files.length; i++){
        var fr = new FileReader();
        var test = new Promise(function(resolve, reject){
            console.log(i) // Prints 0, …
Run Code Online (Sandbox Code Playgroud)

javascript synchronous filereader promise

16
推荐指数
4
解决办法
3万
查看次数

将图像转换为角度为2的base64

将图像转换为角度为2的base64,图像从本地上传.当前我正在使用fileLoadedEvent.target.result.问题是,当我通过REST服务将此base64字符串发送到java时,它无法对其进行解码.当我尝试这个base64字符串与免费在线编码器解码器,我也看不到解码图像.我也试过用画布.没有得到正确的结果.有一件事是肯定base64字符串得到的是不正确的,我需要为此添加任何包吗?或者在角度2中,有任何特定的方式将图像编码为base64,就像在角度1 - angular-base64-upload包中一样.

请在我的示例代码下面找到

onFileChangeEncodeImageFileAsURL(event:any,imgLogoUpload:any,imageForLogo:any,imageDiv:any)
{
    var filesSelected = imgLogoUpload.files;
    var self = this;
    if (filesSelected.length > 0) {
      var fileToLoad = filesSelected[0]; 

      //Reading Image file, encode and display
       var  reader: FileReader = new FileReader();
       reader.onloadend = function(fileLoadedEvent:any) {

       //SECOND METHO
       var imgSrcData = fileLoadedEvent.target.result; // <--- data: base64 

        var newImage = imageForLogo;
        newImage.src = imgSrcData;
        imageDiv.innerHTML = newImage.outerHTML;

      }
      reader.readAsDataURL(fileToLoad);
    }
}
Run Code Online (Sandbox Code Playgroud)

javascript java jquery typescript angular

10
推荐指数
2
解决办法
5万
查看次数

如何使用远程selenium webdriver下载文件?

我正在使用远程seleniumwebdriver执行一些测试.但是,在某些时候,我需要下载一个文件并检查其内容.

我使用远程webdriver如下(in python):

PROXY = ...

prefs = {
    "profile.default_content_settings.popups":0,
    "download.prompt_for_download": "false",
    "download.default_directory": os.getcwd(),
}
chrome_options = Options()
chrome_options.add_argument("--disable-extensions")
chrome_options.add_experimental_option("prefs", prefs)

webdriver.DesiredCapabilities.CHROME['proxy'] = {
  "httpProxy":PROXY,
  "ftpProxy":PROXY,
  "sslProxy":PROXY,
  "noProxy":None,
  "proxyType":"MANUAL",
  "class":"org.openqa.selenium.Proxy",
  "autodetect":False
}
driver = webdriver.Remote(
        command_executor='http://aaa.bbb.ccc:4444/wd/hub',
        desired_capabilities=DesiredCapabilities.CHROME)
Run Code Online (Sandbox Code Playgroud)

使用"普通"webdriver,我可以在本地计算机上下载文件而不会出现问题.然后我可以使用测试代码来验证下载文件的内容(可以根据测试参数进行更改).它不是对下载本身的测试,但我需要一种方法来验证生成的文件的内容 ......

但是如何使用远程 webdriver 做到这一点?我在任何地方都找不到任何帮助......

selenium selenium-webdriver

10
推荐指数
3
解决办法
9229
查看次数

如何捕获FileReader base64作为变量?

这将base64输出到控制台:

function getBase64(file) {
    var reader = new FileReader();
    reader.readAsDataURL(file);
    reader.onload = function() {
        console.log(reader.result);
    };
    reader.onerror = function(error) {
        console.log('Error: ', error);
    };
}

var file = document.querySelector('#files > input[type="file"]').files[0];
getBase64(file); // prints the base64 string
Run Code Online (Sandbox Code Playgroud)

资料来源: https ://stackoverflow.com/a/36281449/1063287

jsFiddle: 上面工作代码的jsFiddle演示

我希望能够将base64分配给变量,所以我根据这个答案尝试了以下内容:

function getBase64(file, onLoadCallback) {
    var reader = new FileReader();
    reader.readAsDataURL(file);
    reader.onload = onLoadCallback;
    reader.onerror = function(error) {
        console.log('Error when converting PDF file to base64: ', error);
    };
}

var my_pdf_file = document.querySelector("#my_pdf_file").files[0];
var my_pdf_file_as_base64 …
Run Code Online (Sandbox Code Playgroud)

javascript base64 filereader

8
推荐指数
1
解决办法
4962
查看次数

ASMX文件上传

有没有办法使用ASMX Web服务将文件从本地文件系统上传到服务器中的文件夹(没有WCF,不要问为什么:)?

UPD

PSfile大小可以是2-10 GB

.net c# web-services asmx

7
推荐指数
2
解决办法
1万
查看次数

如何在TinyMCE编辑器中插入一个按钮,将本地文件作为RAW图像插入当前位置?

如何在TinyMCE编辑器中添加自定义/默认按钮,以便能够选择本地图像并将其作为RAW(BASE64)图像插入编辑器中的当前位置?

tinymce

6
推荐指数
1
解决办法
365
查看次数

ANGULAR 4 Base64上传组件

我是Angular的新手.我正在使用Angular 4.其中需要将base64 Image作为模型成员之一发送到web api.是否有一个Angular组件或指令将base64绑定到所述模型?

感谢并感谢您的帮助.

upload base64 components directive angular

6
推荐指数
1
解决办法
1万
查看次数

如何将多个文件转换为base64字符串?

我有一个这样的组件

<input type="file" multiple @change="toBase64Handler($event)">

<script>
 data() {
  return {
     files: [],
   }
 },
 methods: {
  tobase64Handler(event) {
   // the code
  }
 }
</script>
Run Code Online (Sandbox Code Playgroud)

我想将所有选定的文件转换为 Base64 字符串,如下所示:

files: [
  {
   selectedFile: 'ajsdgfauywdljasvdajsgvdasdo1u2ydfouayvsdlj2vo8ayasd...'
  },
  {
   selectedFile: 'askdhgoiydvywdljasvdajsgvdasdo1u2ydfoakjgsfdjagswsd...'
  },
  {
   selectedFile: '12edashjvlsljasvdajsgvdasdo1u2ydfouayvsdlj2vo8ayfsd...'
  },
]
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

javascript base64 vue.js vuejs2

3
推荐指数
1
解决办法
6237
查看次数