20150420-20150424 一周工作问题及解决【共享文件的获取、前后台乱码问题解决等】
20150420-20150424问题记录
1、MD5加密
原文经过MD5加密后,得到唯一的摘要。
一个摘要可对应多条原文。故:根据摘要不能逆推出原文。
2、关于InputStream.available()
做下载方法时,当通过FileInputStream来读取要下载文件大小时,可成功返回相应的值。
但:用SmbFileInputStream的available()方法获取时,始终返回0。(网上解释:可能与网络状况有关,可我用while死循环进行读取时,仍然一直为0)
解决:读取inputStream流中的方法:byte[]buffer=IOUtils.toByteArray(fis);
3、关于读取网络共享文件的方法:
3.1直接使用SmbFile来进行关于文件的操作。
SmbFile file=new SmbFile(“smb://userName:password@IP/filePath/”);
或:
SmbFile file=new SmbFile(“smb://IP/filePath/”);
注意:若filePath为文件夹,则其后必须有”/”
若filePath为文件,则”/”去掉,且filePath需精确到后缀。
使用SmbFileInputStream来读取文件内容时,若参数file是文件夹,则报错:Access is denied。故使用SmbFileInputStream时,参数file必须是一个文件。
3.2将网络共享文件映射到本地。
并以普通的File来进行访问。此时:网络共享文件与本地文件并无区别。
将共享文件映射到本地磁盘的链接:http://jingyan.baidu.com/article/e75057f2dc3690ebc91a89ad.html
4、 jcifs.smb.SmbException:0xC000009A
之前是可以实现通过SmbFile实现对共享资源的正常下载的。但是,不知什么原因,在通过SmbFile file=new SmbFile(….)查找file时,报以上错误。
SMB错误代码表链接:
https://msdn.microsoft.com/en-us/library/ee441884.aspx
5、获取键盘输入
InputStreamReader isr=new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(isr);
String inStr=br.readLine();
获取控制台输入:
Scanner in=new Scanner(System.in);
String inStr=in.readLine();
得到随机数:
Random random=new Random();
Random.nextInt(int);//int 最大值
6、关于socket通讯中的DataOutputStream.writeUTF()和DataInputStream.readUTF()
6.1用来输入和输出java中基本数据类型。
6.2包括:对基本数据类型的读写。
readUTF()次数超过writeUTF()时,会报错。
7、用swfTools实现pdf转swf时问题
实现转化:
需下载swfTools,并安装。
执行pdf转换为swf的cmd命令为:
D:/ProgramFiles/SWFTools/pdf2swf -t pdfPath -o swfPath -f -s flashversion=9
D:/Program Files/SWFTools/pdf2swf为:安装目录下,pdf2swf.exe的路径。
问题:
7.1 pdfPath中有空格时的处理:将pdfPath用””括起来。
7.2 pdfPath中有中文时的乱码问题:同样可以将pdfPath用””括起来。解决
8、SWFFile预览时,SWFFile兼容问题
fireFox上,debug不跳转。
IE上可以正常跳转。
现已解决。原因:SWFFile 赋值时的URL参数中含有中文。
SO:只传递ID值,若是接口数据,则从静态接口MAP中获取。若是本系统数据,则根据ID从数据库中查找。就把这个中文乱码及不跳转的问题绕了过去。
9、jsp向后台get请求传递参数时中文乱码
解决方法: 没有使用转化编码的方式。而是利用form表单改用post请求。
9.1 本jsp页面内的post请求。
<iframe name=”iframeName” style=”display:none;”></iframe>
<form id=”testPostForm” method=”post” target=” iframeName”>
<input id=”path” name=”path” style=”hidden”></input>
</form>
functiondownload(url,path){
var form=document.getElementById(“testPostForm”);
$(#path).val(path);
form.action=url;
form.submit();
}
Form表单使用post方式提交时,path作为参数传递到后台,后台通过getRequest().getParameter(“path”)可以获取到,并且path有中文也不会有乱码。
设置编码格式:getRequest().setCharacterEncoding(“UTF-8”);
9.2 window.open(url)打开新窗口时参数中文乱码问题解决
从当前jsp页面中使用window.open(url)打开新的页面。默认采用get请求。如果url参数中有中文,该中文会乱码。
解决方法:定义一个form表单,设定form的target=”_blank”用来打开新的窗口。设置form的method=”post”。同上,在form中设置一个隐藏的input,用来存放有中文的参数。使用form的submit()即可。
注意:将form的target设置为_self之后,如果执行url的过程中出错,则本页面将称空白状态,无响应。故需定义一个隐藏的iframe 将form的target属性设置为iframe的name。
9.3使用$.ajax发送post异步请求时,URL后参数乱码问题
使用$.ajax发送异步请求时,在URL后如果参数有中文,向后台传递过程中会乱码。
解决方式:配置data属性值,格式如下:
data:{“path”:fjlj} 其中fjlj为已知变量名。
9.4 JS中的escape方法
在JSP界面通过url传递参数时,参数中有中文。在后台得到的中文为类似4E2D6587,在后台的解析方法还没找到。
Jsp页面中对URI进行encodeURI(url),后台进行URLDecoder.decode()。
注:关于9.4没有测试通过。最终的解决办法是:在Action中定义了一个静态Map存放,接口数据ID和FJLJ的键值对。当进行预览时,只需传递ID即可从Map中获取文件FJLJ【不乱码】,根据fjlj去实现预览功能。
10、tomcat启动时报错:端口被占用
Cmd中输入:netstat –ano
找到占用端口8080 8009的进程后,得到PID。
执行:taskkill /pid pidNo /f即可。
11、接口调用
11.1调用接口实际和用ajax访问一个已知的路径一样。
11.2 用到的依赖库
<dependency>
<groupId>org.restlet.jse</groupId>
<artifactId>org.restlet</artifactId>
<version>2.2.2</version>
</dependency>
11.3 调用代码实现:
ClientResource client=newClientResource(new Context(),urlStr);
StringresultJson=client.get().getText();
11.4 超时设置
12、Zip压缩时,压缩内部文件名称乱码问题
压缩时使用org.apache.tools 包下的zip类进行压缩操作。
并根据实际情况通过zipOutputStream.setEncoding(“”);设置编码格式。(默认:GBK)
内网环境需设置为:UTF-8
13、Eclipse通过tomcat启动GSMZ项目时,报错:java heap
网上有好多都是:修改启动tomcat的bat文件或者在Eclipse中的servers中设置参数。但:我这边没有servers。所以是通过下边方法解决的:
20150420-20150424 一周工作问题及解决【共享文件的获取、前后台乱码问题解决等】相关推荐
- 马云对话马斯克:福报变成了一周工作12小时?
燃财经(ID:rancaijing)整理 作者 | 刘景丰 编辑 | 魏佳 8月29日,2019世界人工智能大会(WAIC)在上海举行.开幕式后,美国卡内基梅隆大学计算机学院院长汤姆·米切尔(Tom ...
- 前端工程师考核总结_最新前端工程师周工作总结
前端工程师周工作总结 转眼一周的时间过去了,回想一下这一周做的工作,在保证效率的同时也仍然 存在着一些小的问题,现在总结如下. 第一,在工作的时候还是有点急于求成.这一周在写页面的时候遇到了一个小 问 ...
- 第一周周工作总结及计划表
周工作总结及计划表 姓 名 张苗 学 号 11303080405 入 职 时 间 2014/9/16 本周已完成工作内容及总结 软件工程与计算I的前三道题中,第一题已完成三版本,第二题目前被我 ...
- 第六周周工作总结及计划表
周工作总结及计划表 姓 名 张苗 学 号 1130308040 入 职 时 间 2014/9/16 本周已完成工作内容及总结 又过了一周,还是那个考核类容,但是感觉怎么都不对.遇到许多问题:数 ...
- 一周工作60个小时并不值得骄傲,这是个问题!
本文由 极客范 - yesky 翻译自 Jeff Archibald.欢迎加入极客翻译小组,同我们一道翻译与分享.转载请参见文章末尾处的要求. 当我们声称自己在这周,上周或是上个月超负荷地工作了多少时 ...
- oracle左连接数据会对不上吗,一周工作总结–左连接造成的一些问题-Oracle
一周工作总结–左连接造成的一些问题 今天有同事告诉我,有个SQL执行了好久好久执行不出来,我说好就是多久?她说一天左右了.真是令人咋舌的SQL.于是我要来了SQL看了看执行计划,确实让人咋舌. 下图中 ...
- 服务器显示屏 超出工作频率范围,win7显示器超出工作频率范围怎么解决
最近有位iwin7系统用户使用电脑的时候,电脑显示器总是提示超过工作频率范围,用户不知道如何解决此问题,为此非常苦恼,其实出现这样的问题可能是因为分辨率.刷新率被篡改了,操作呢显示器的承受范围,那么w ...
- 在win7下用vs2008 编译程序时出现“mt.exe停止工作”问题的解决办法
在win7下用vs2008 编译程序时出现"mt.exe停止工作"问题的解决办法: 项目->属性->链接器->清单文件->生成清单,把后面的值改为" ...
- revit2016经常已停止工作,该如何解决呢?
revit2016经常"已停止工作",该如何解决呢? 1. 2. 问题签名: 问题事件名称: APPCRASH 应用程序名: Revit.exe 应用程序版本: 16.0.428. ...
最新文章
- Windows窗体的所有菜单
- java AC自动机
- linux系统编程之使用C++(1)-打开关闭文件
- Linux USB驱动框架分析 【转】
- web.xml加载顺序
- Python数值计算:一 使用Pylab绘图(1)
- 2017.9.2 最大半联通子图 思考记录
- tesseract linux 训练
- 动态图制作软件设计(三)
- fabric安装及试用
- java条件触发,触发器触发条件是什么?更改数据时实现方法是什么?
- 【知了堂学习笔记】$.ajax配合Servlet实现登录验证
- PHP+Javascript实现拖动滑块完成拼图验证码
- 如何有效突破微信每天限加20个好友的技巧
- listbox java_listbox读取数据库
- 参加IBM武汉分公司10周年庆
- 六年如逆旅,我亦是行人 ——一个顾问的六年安全从业经历
- 谈谈如何快速掌握一般性的IT知识点
- 核心期刊《中国老年学杂志》期刊简介及投稿要求
- 《数据结构与算法之二叉平衡树(AVL)》