当前位置: 首页 > news >正文

国内做网站网站风险大吗物联网的应用

国内做网站网站风险大吗,物联网的应用,外贸网站建设哪个好,网站建设工程属于科技档案吗在java应用软件中#xff0c;会有多处涉及到字符集编码#xff0c;有些地方需要进行正确的设置#xff0c;有些地方需要进行一定程度的处理。1. getBytes(charset)这是java字符串处理的一个标准函数#xff0c;其作用是将字符串所表示的字符按照charset编码#xff0c;并以…在java应用软件中会有多处涉及到字符集编码有些地方需要进行正确的设置有些地方需要进行一定程度的处理。1. getBytes(charset)这是java字符串处理的一个标准函数其作用是将字符串所表示的字符按照charset编码并以字节方式表示。注意字符串在java内存中总是按unicode编码存储的。比如中文正常情况下(即没有错误的时候)存储为4e2d 6587如果charset为gbk则被编码为d6d0 cec4然后返回字节d6 d0 ce c4.如果charset为utf8则最后是e4 b8 ad e6 96 87.如果是iso8859-1则由于无法编码最后返回3f 3f(两个问号)。java   .class类的编码为unicode;windows 默认的编码为中文gb2312; 英文iso8859;String str 张三 ;byte[] jiema str.getBytes(gb2312) ; //解码String bianma new String(jiema,UTF-8);//编码 如果上面的解码不对 可能出现问题2. new String(charset)这是java字符串处理的另一个标准函数和上一个函数的作用相反将字节数组按照charset编码进行组合识别最后转换为unicode存储。参考上述getBytes的例子gbk 和utf8都可以得出正确的结果4e2d 6587但iso8859-1最后变成了003f 003f(两个问号)。因为utf8可以用来表示/编码所有字符所以new String( str.getBytes( utf8 ) utf8 ) str即完全可逆。3. setCharacterEncoding()该函数用来设置http请求或者相应的编码。对于request是指提交内容的编码指定后可以通过getParameter()则直接获得正确的字符串如果不指定则默认使用iso8859-1编码(因为iso8859-1有很多的字符不能表示因此会成为乱码)需要进一步处理。参见下述表单输入.值得注意的是在执行setCharacterEncoding()之前不能执行任何getParameter()。java doc上说明Thismethod must be called prior to reading request parameters or reading input using getReader()。而且该指定只对POST方法有效对GET方法无效。分析原因应该是在执行第一个getParameter()的时候java将会按照编码分析所有的提交内容而后续的getParameter()不再进行分析所以setCharacterEncoding()无效。而对于GET方法提交表单是提交的内容在URL中一开始就已经按照编码分析所有的提交内容setCharacterEncoding()自然就无效(所以应该在提交的时候就使用utf-8进行编码这样getParameter的时候再解码就ok了)。对于response则是指定输出内容的编码同时该设置会传递给浏览器告诉浏览器输出内容所采用的编码。4. 处理过程下面分析两个有代表性的例子说明java对编码有关问题的处理方法。4.1. 表单输入User input *(gbkd6d0 cec4) browser *(gbkd6d0 cec4) web server iso8859-1(00d6 00d0 00ce 00c4) class需要在class中进行处理getbytes(iso8859-1)为d6 d0 ce c4new String(gbk)为d6d0 cec4内存中以unicode编码则为4e2d 6587.l 用户输入的编码方式和页面指定的编码有关也和用户的操作系统有关所以是不确定的上例以gbk为例。l 从browser到web server可以在表单中指定提交内容时使用的字符集否则会使用页面指定的编码。而如果在url中直接用的方式输入参数(即get方法)则其编码往往是操作系统本身的编码因为这时和页面无关。上述仍旧以gbk编码为例。l Web server接收到的是字节流默认时(getParameter)会以iso8859-1编码处理之结果是不正确的所以需要进行处理。但如果预先设置了编码(通过request. setCharacterEncoding ())则能够直接获取到正确的结果。l 在页面中指定编码是个好习惯否则可能失去控制无法指定正确的编码通常指定为utf-8。4.2. 文件编译假设文件是gbk编码保存的而编译有两种编码选择gbk或者iso8859-1前者是中文windows的默认编码后者是linux的默认编码当然也可以在编译时指定编码。Jsp *(gbkd6d0 cec4) java file *(gbkd6d0 cec4) compiler read uincode(gbk 4e2d 6587 iso8859-1 00d6 00d0 00ce 00c4) compiler write utf(gbk e4b8ad e69687 iso8859-1 *) compiled file unicode(gbk 4e2d 6587 iso8859-1 00d6 00d 000ce 00c4) class.所以用gbk编码保存而用iso8859-1编译的结果是不正确的。class unicode(4e2d 6587) system.out / jsp.out gbk(d6d0 cec4) os console / browser.l 文件可以以多种编码方式保存中文windows下默认为ansi/gbk.l 编译器读取文件时需要得到文件的编码如果未指定则使用系统默认编码。一般class文件是以系统默认编码保存的所以编译不会出问题但对于jsp文件如果在中文windows下编辑保存而部署在英文linux下运行/编译则会出现问题。所以需要在jsp文件中用pageEncoding指定编码。l Java编译的时候会转换成统一的unicode编码处理最后保存的时候再转换为utf编码。l 当系统输出字符的时候会按指定编码输出对于中文windows下System.out将使用gbk编码而对于response(浏览器)则使用jsp文件头指定的contentType或者可以直接为response指定编码。同时会告诉browser网页的编码。如果未指定则会使用iso8859-1编码。对于中文应该为browser指定输出字符串的编码。l browser显示网页的时候首先使用response中指定的编码(jsp文件头指定的contentType最终也反映在response上)如果未指定则会使用网页中meta项指定中的contentType.5. 几处设置对于web应用程序和编码有关的设置或者函数如下。5.1. jsp编译指定文件的存储编码很明显该设置应该置于文件的开头。例如charsetutf-8。另外对于一般class文件可以在编译的时候指定编码。5.2. jsp输出指定文件输出到browser是使用的编码该设置也应该置于文件的开头。例如。该设置和response.setCharacterEncoding(GBK)等效。5.3. meta设置指定网页使用的编码该设置对静态网页尤其有作用。因为静态网页无法采用jsp的设置而且也无法执行response.setCharacterEncoding()。例如如果同时采用了jsp输出和meta设置两种编码指定方式则jsp指定的优先。因为jsp指定的直接体现在response中。需要注意的是apache有一个设置可以给无编码指定的网页指定编码该指定等同于jsp的编码指定方式所以会覆盖静态网页中的meta指定。所以有人建议关闭该设置。5.4. form设置当浏览器提交表单的时候可以指定相应的编码。例如URLEncoder.encode(key, utf-8))。一般不必不使用该设置浏览器会直接使用网页的编码。首先介绍两种字符集 gb2312 和 gbk。gb2312 简体中文编码。gbk    中文字符编码 包括繁体中文1. 指定jsp文件里内容的的编码方式2. 指定html文件里内容的编码方式3. 当响应用户的请求时输出到用户浏览器上的编码方式相当于生成的代码 response.setContentType(text/html; charsetgb2312);4. 把用户传递过来的参数作为指定的编码request.setCharacterEncoding(gb2312);5. 对比request.setCharacterEncoding(gb2312);               //设置输入编码格式response.setContentType(text/html; charsetgb2312); //设置输出编码格式
http://www.pierceye.com/news/461266/

相关文章:

  • 专业新站整站快速排名公司商业网站和企业网站的区别
  • 网站做等保备案河北建设厅网站登陆怎么找附件
  • 网站前台显示数据库指定分类怎么做php优化大师官方免费
  • 用ps软件做ppt模板下载网站c2c网站开发策划
  • 标志空间 网站tk域名网站多少
  • dedecms网站地图插件永康公司网站开发
  • 比较网站建设有没有学做ppt发网站或论坛
  • 用asp做网站流程做科研找论文的网站
  • 新浪网站怎么做推广广告网站模板下载不了
  • 微网站建设哪家优惠h5小游戏在线玩
  • 娄底高端网站建设网站建设费计入 科目
  • 免费企业网站程序上传wordpress 卸载
  • 大庆市建设局网站上不去linux删除WordPress
  • 宣城市建设监督管理局网站下载怎么上wordpress
  • 福州做网站fjfzwl编写软件开发文档
  • 平台设计网站公司电话号码建站哪家好用兴田德润
  • 宝安网站建设信科免费网站开发 自动填写表单
  • 网站怎么更新文章动漫网站在线免费观看
  • 织梦 网站迁移网页制作三剑客通常指
  • 南京本地网站建站武安百度seo
  • 特定ip段访问网站代码西安免费建网站设计
  • 个人网站备案取消wordpress可以做大吗
  • 如何做网站管理网站服务器基本配置
  • 做网站需要参考书目书龙岩营销型网站建设
  • 南通网站建设解决方案求助如何做网站推广
  • 揭阳企业做网站淮安做网站
  • 怎么给餐饮店做网站用织梦做企业网站
  • 技术支持 创思佳网站建设如何制作自己的网站
  • 济南网站建设公司晟创未来wordpress xml插件
  • 前端做商城网站需要多久实训课网站开发个人小结