js unit8array和java变量之间的关系

js unit8array和java变量之间的关系unit8array如何同java进行交互最近一个项目遇到了一个二维码转换的问题,厂家给的demo只有js的转换方式,其中用到了Unit8,由于实际应用场景,转换应该由后端java代码进行实现,这里记录一下实现方式。JS对字符串操作的时候,有时候我们会用到UNIT8ARRAY,例如varbinary_string=window.atob(str);vararray=new…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

unit8array如何同java进行交互

最近一个项目遇到了一个二维码转换的问题,厂家给的demo只有js的转换方式,其中用到了Unit8,由于实际应用场景,转换应该由后端java代码进行实现,这里记录一下实现方式。

JS对字符串操作的时候,有时候我们会用到UNIT8ARRAY,例如

  var binary_string = window.atob(str);
  var array= new Uint8Array(len);
  for (var i = 0; i < len; i++) {
    array[i] = binary_string.charCodeAt(i);
    consolr.dir(array[i]);
  }

接下来,比如我们想将array传入java后台,我们应该定义一个什么样的参数来接收呢,或者同样的方法,如果用java代码该如何写才能实现类似js unit8array的功能呢

遇到问题,先说一下分析解决思路。

1、读js代码,window.atob,为base64转换,而在java中,我们常用的base64转换的第一部是将str转换为byte[],所以通过这个进行推测,这个array的unit8数组,应该是java的byte[],毕竟1byte=8bit,这个unit8根据8这个数字本身,也是可以联想。
于是试验一下。

		String str = "base64字符串";
		byte[] bytes = Base64.getDecoder().decode(str);

		int[] in1 = new int[bytes.length];
		for (int i = 0; i < in1.length; i++) {
			in1[i] = bytes[i];
		}

对数组进行输出,发现前台js中控制台打印的信息,和后台java打印的信息是一致的。所以断定,unit8array应该对应java的btye[].

记录一下,以后设计js和后端进行交互,遇到Unit8array,后端直接使用Byte[]进行接收即可。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/192577.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • CentOS防火墙开启、关闭以及开放指定端口

    CentOS防火墙开启、关闭以及开放指定端口

    2021年5月9日
    186
  • ROC曲线的含义以及画法

    ROC曲线的含义以及画法**ROC的含义及画法**ROC的全名叫做ReceiverOperatingCharacteristic(受试者工作特征曲线),又称为感受性曲线(sensitivitycurve)。得此名的原因在于曲线上各点反映着相同的感受性,它们都是对同一信号刺激的反应,只不过是在几种不同的判定标准下所得的结果而已。其主要分析工具是一个画在二维平面上的曲线——ROC曲线。ROC曲线以真正例率TPR为纵轴,以假正例率FPR为横轴,在不同的阈值下获得坐标点,并连接各个坐标点,得到ROC曲线。对于一个分类任务

    2022年5月16日
    29
  • 如何使用ccs软件创建工程

    这里简叙如何使用ccs软件创建工程的具体步骤,正文如下:1、打开ccs软件,单击菜单栏中的“Project”选项,在弹出的下拉菜单中选择“NewCCSProject”,如下图所示:  2、在“Projectname”中输入自定义的工程名称,在“Family”中选择所需DSP的系列,在“Variant”的目录下选择所需的DSP的型号,最后在“Connection”目录下选择仿真…

    2022年4月8日
    408
  • oracle用户修改密码sql_oracle数据库管理员密码忘记

    oracle用户修改密码sql_oracle数据库管理员密码忘记修改oracle数据库用户名称和密码(Linux为例),有需要的朋友可以参考下。一、修改前准备工作:使用ssh工具以root身份连接服务器,然后切换到oracle用户:su-oracle(回车)使用sqlplus连接数据库:sqlplus/nolog(回车)以管理员身份登录sys用户:connsys/sysassysdba(回车)数据库连接成功,至此准备工作完成。二、修改用户名称。数据…

    2022年7月28日
    15
  • 用HTML+CSS代码制作3D旋转相册

    用HTML+CSS代码制作3D旋转相册手打代码:&amp;lt;!DOCTYPEhtml&amp;gt;&amp;lt;html&amp;gt;&amp;lt;headlang=&quot;en&quot;&amp;gt;&amp;lt;metacharset=&quot;UTF-8&quot;&amp;gt;&amp;lt;title&amp;gt;3D旋转&amp;lt;/title&amp

    2022年6月11日
    205
  • fsockopen/curl/file_get_contents效率比较[通俗易懂]

    fsockopen/curl/file_get_contents效率比较

    2022年2月10日
    36

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号