- 浏览: 275268 次
- 性别:
- 来自: 黑龙江省
-
文章分类
最新评论
-
leipan19890705:
AS调用JS里的呢?有没有?我的一直不成功。
JavaScript与ActionScript交互简单实例 -
newLinuxJava:
补充一下,windows7 日志配置文件的位置:Microso ...
Flex debug环境构建 -
ye_wx:
要加哪些jar包呢?麻烦列出来行吗
Java---POI--操作PPT -
brightACE:
不错,学习了
JavaScript与ActionScript交互简单实例 -
se7en8974:
留个言,回去看看。
推荐一个学习Flex chart的好网站
使用HttpClient模拟网站登陆sina邮箱(保持远程服务器session和cookie) (转载)
http://www.cnblogs.com/yesun/archive/2007/09/23/903319.html
/**
* 通过URL取得网页内容
*/
private void HttpRequestURL()
{
String postData = "";
if(_tc.getPostData()!=null && !_tc.getPostData().equals(""))
{
postData = _tc.getPostData();
}
if(_tc.getPostMethod()==null || _tc.getPostMethod().equals(""))
_tc.setPostMethod("GET");
String postUrl = _tc.getUrl();
if(_tc.getPostMethod().toUpperCase().equals("GET") && !postData.equals(""))
{
if(postUrl.indexOf("?") > -1)
postUrl += "&"+postData;
else
postUrl += "?"+postData;
}
System.out.println("--------Transfer Start------------------------------------------------------------------");
System.out.println(" 页面解析准备就绪...");
System.out.println(" Url:"+postUrl);
System.out.println(" PostData:"+postData);
System.out.println(" PostMethod:"+_tc.getPostMethod());
System.out.println(" Encoding:"+_tc.getEncoding());
System.out.println("--------------------------------------------------------------------------------------");
HttpClient httpClient = new HttpClient();
if(_tc.getPostMethod().toUpperCase().equals("GET"))
{
if(!postData.equals(""))
{
if(postUrl.indexOf("?") > -1)
postUrl += "&"+postData;
else
postUrl += "?"+postData;
}
GetMethod getHC = new GetMethod(postUrl);
getHC.setFollowRedirects(false);
getHC.getParams().setHttpElementCharset("UTF-8");
//发送Cookie
StringBuilder cookieValue = new StringBuilder();
for(String key : this.cookie.keySet()){
cookieValue.append(key);
cookieValue.append("=");
cookieValue.append(this.cookie.get(key));
cookieValue.append("; ");
}
getHC.setRequestHeader("Cookie", cookieValue.toString());
getHC.setRequestHeader("User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows 2000)");
int statusCode;
try {
statusCode = httpClient.executeMethod(getHC);
Header[] headers = getHC.getResponseHeaders();
for(Header header : headers){
if(header.getElements().length > 1){
HeaderElement[] elements = header.getElements();
for(HeaderElement element : elements){
checkCookie(element);
}
}
else
{
checkCookie(header);
}
}
if(statusCode==HttpStatus.SC_OK){
String charset = "utf-8";
if(_tc.getEncoding() == GB2312)
charset = "gb2312";
else if(_tc.getEncoding() == UTF8)
charset = "utf-8";
else if(_tc.getEncoding() == BIG5)
charset = "big5";
else
charset = "utf-8";
System.out.println("charset : " + charset);
InputStreamReader isr = new
InputStreamReader(getHC.getResponseBodyAsStream(), charset); //
设置读取流的编码格式,自定义编码
// 使用字符读取方式,循环读取源文件内容
StringBuffer sb = new StringBuffer();
int b ;
while ((b = isr.read()) != -1)//顺序读取文件text里的内容并赋值给整型变量b,直到文件结束为止。
{
if (b < 32 && b!= 10 && b != 13 && b != 9) b = 32;//过滤掉一些换行等符号
//if ( b== 10 || b== 13 || b== 9) b = 32;//过滤掉一些换行等符号
sb.append((char)b);
}
isr.close();
getHC.abort();
//取得采集的内容
_content = sb.toString();
//System.out.println("content : "+_content);
}
else
{
if(statusCode == 301 || statusCode == 302){
Header locationHeader = getHC.getResponseHeader("location");
_tc.setUrl(locationHeader.getValue());
_tc.setPostData("");
_tc.setPostMethod("GET");
HttpRequestURL();//重新请求新网页
}
}
} catch (HttpException e2) {
e2.printStackTrace();
} catch (IOException e2) {
e2.printStackTrace();
}
}
else
{
PostMethod postHC = new PostMethod(postUrl);
postHC.setFollowRedirects(false);
postHC.getParams().setHttpElementCharset("UTF-8");
//发送Cookie
StringBuilder cookieValue = new StringBuilder();
for(String key : this.cookie.keySet()){
cookieValue.append(key);
cookieValue.append("=");
cookieValue.append(this.cookie.get(key));
cookieValue.append("; ");
}
postHC.setRequestHeader("Cookie", cookieValue.toString());
postHC.setRequestHeader("User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows 2000)");
//post数据到服务器
if(postData!=null && !postData.equals("")){
HashMap<String,String> argv = new HashMap<String,String>();
String[] arrParams = postData.split("&");
for(int i=0;i<arrParams.length;i++){
if(arrParams[i] == null || arrParams[i].equals(""))
{
continue;
}
else if(arrParams[i].indexOf("=") > -1)
{
String[] nameValue = arrParams[i].split("=");
if(nameValue.length > 1)
argv.put(nameValue[0], nameValue[1]);
}
}
if(argv!=null){
NameValuePair[] nameValuePair = new NameValuePair[argv.size()];
int i = 0;
for(String key : argv.keySet()){
nameValuePair[i] = new NameValuePair(key, argv.get(key));
i++;
}
postHC.setRequestBody(nameValuePair);
}
}
int statusCode;
try {
statusCode = httpClient.executeMethod(postHC);
Header[] headers = postHC.getResponseHeaders();
for(Header header : headers){
if(header.getElements().length > 1){
HeaderElement[] elements = header.getElements();
for(HeaderElement element : elements){
checkCookie(element);
}
}
else
{
checkCookie(header);
}
}
if(statusCode==HttpStatus.SC_OK){
String charset = "utf-8";
if(_tc.getEncoding() == GB2312)
charset = "gb2312";
else if(_tc.getEncoding() == UTF8)
charset = "utf-8";
else if(_tc.getEncoding() == BIG5)
charset = "big5";
else
charset = "utf-8";
InputStreamReader isr = new
InputStreamReader(postHC.getResponseBodyAsStream(), charset); //
设置读取流的编码格式,自定义编码
// 使用字符读取方式,循环读取源文件内容
StringBuffer sb = new StringBuffer();
int b ;
while ((b = isr.read()) != -1)//顺序读取文件text里的内容并赋值给整型变量b,直到文件结束为止。
{
if (b < 32 && b!= 10 && b != 13 && b != 9) b = 32;//过滤掉一些换行等符号
//if ( b== 10 || b== 13 || b== 9) b = 32;//过滤掉一些换行等符号
sb.append((char)b);
}
isr.close();
postHC.abort();
//取得采集的内容
_content = sb.toString();
}
else
{
if(statusCode == 301 || statusCode == 302){
Header locationHeader = postHC.getResponseHeader("location");
_tc.setUrl(locationHeader.getValue());
_tc.setPostData("");
_tc.setPostMethod("GET");
HttpRequestURL();//重新请求新网页
}
}
} catch (HttpException e2) {
e2.printStackTrace();
} catch (IOException e2) {
e2.printStackTrace();
}
}
}
private void checkCookie(NameValuePair entry){
if(entry.getName().equals("Set-Cookie")){
//这个就是Cookie了
String value = entry.getValue();
if(value.indexOf(";") >0 )
value = value.substring(0,value.indexOf(";"));
System.out.println(entry.toString());
String[] cookieNameValuePair = value.split("=");
if(cookieNameValuePair.length > 1){
if(cookieNameValuePair[1].equals("deleted")){
this.cookie.remove(cookieNameValuePair[0]);
}
else
{
this.cookie.put(cookieNameValuePair[0], cookieNameValuePair[1]);
}
}
else
{
this.cookie.remove(cookieNameValuePair[0]);
}
}
}
发表评论
-
myeclipse8.5 运行程序报错 java.lang.OutOfMemoryError
2012-04-11 20:21 1127myeclipse8.5 运行程序报错 java.lang. ... -
权限管理模型
2012-01-10 17:24 1272转载来源http://www.cnblo ... -
【自然框架】之通用权限:用PowerDesigner重新设计了一下数据库,有ER图和表关系图
2012-01-10 16:52 6592转自 http://www.cnblogs.com/ ... -
查看mysql 连接数
2011-07-20 14:47 14271、查看当前所有连接的详细资料: mysqladmin -u ... -
tomcat5.5如何修改分配给Java虚拟机的内存
2011-07-04 11:07 1665tomcat5.5如何修改分配给Java虚拟机的内存 ... -
tomcat实现SSL配置
2011-06-27 15:27 1166tomcat实现SSL配置 编辑tomcat的配置文件serv ... -
SQL 左外连接,右外连接,全连接,内连接
2011-06-26 11:11 1920SQL 左外连接,右外连接,全连接,内连接 ... -
dwr实现文件的下载--已经解决中文文件名乱码问题
2011-06-12 19:49 4227package com.wabacusdemo.u ... -
openflashchartdemo
2012-02-16 21:56 1084openflashchartdemo -
Apache HttpClient模拟登录
2011-01-17 21:46 2075Apache HttpClient模拟登录 Http ... -
HttpClient的使用
2011-01-17 21:44 1083HttpClient 简介 HTTP 协议可能是现在 ... -
HTMLParser使用详解
2011-01-17 11:20 1777HTMLParser 使用详解 HT ... -
servlet利用filter实现登录过滤
2010-09-03 00:30 1294登录过滤类loginFilter----- ... -
log 4j配置详解
2010-08-06 01:00 1544web.xml中的配置 <!-- 以下是配置lo ... -
java 操作excel
2010-07-31 23:13 8681 从Excel文件读取数据 ... -
Java通用权限控制算法(转)
2010-06-20 22:48 1042转摘 一种常用的权限控制算法的实现,参考LIN ... -
Java---POI--操作PPT
2010-06-19 18:24 3540一, 解析PPT文件中的图片 Java代码 ... -
js写的日期控件
2009-03-19 02:44 931http://www.my97.net/dp/demo/ -
mysql添加新用户并且分配权限
2009-03-07 00:13 1301bin>mysql -u rootmysql> g ... -
MySql 数据的备份与恢复
2009-02-16 18:27 1014window mysql命令 前提:通过cmd进入dos,进 ...
相关推荐
【LPSO-BP分类】基于改进莱维飞行和混沌映射的粒子群优化算法优化BP神经网络分类研究(Matlab代码实现)
皮带线滚筒线sw20可编辑_三维3D设计图纸_三维3D设计图纸.zip
基于单片机protues仿真的双路压力监测报警系统设计(仿真图、源代码) 这个基于C51单片机的双路压力监测报警系统是做的程设计,已通过验收,没有bug,功能更完善,所附包含proteus仿真文件,源代码,使用说明,可以做一个不错的参考。 所完成功能为模拟电路输入测量两路压力值,量程范围0~100MPa,带有LED报警功能,可以自行设置上限,压力测量值分时显示。 使用说明: 1.开始仿真,压力上限初始值为99MPa; 2.点击按钮button(要使数码管全部清零),在键盘处输入上限值; 3.上限值修改成功,重新开始显示,显示第一路时左侧带有上限值标识,显示第二路时左侧没有标识; 4.当测量数值超过了所设定上限,二极管闪烁报警; 5.结束仿真。
本书旨在通过21天的时间,带领读者从零基础开始学习C#语言。第一天介绍C#的基础知识,包括C#是什么、如何准备编程环境、程序开发周期以及创建和编译C#程序。随后,作者逐步引导读者深入理解C#程序的结构、关键字、数据类型、值的操作和程序流程控制。进入第二周,读者将学习类和对象、方法和成员函数、结构、枚举器和数组等面向对象编程的核心概念。第三周的内容包括继承、接口、委托、事件、索引器、运算符重载以及.NET基类的使用、Windows窗体和应用程序的创建、数据库操作以及远程过程调用和Web应用程序的创建。书末附有C#关键字列表、编译器标志、数字系统理解、SharpDevelop安装使用指南以及完整的索引,为读者提供全面的参考资料。
本文探讨了广告与文化之间的关系及其对品牌塑造的影响。随着科技的进步,文化和广告的互动变得更加复杂,文化变得碎片化和快速变化,人们渴望通过广告获得归属感和共同体验。研究表明,广告不仅能塑造文化,还能通过传达价值观和建立社区来增强消费者的归属感。不同代际的人群对广告和品牌的期望有所不同,年轻一代更希望广告能激发创造力并提供沉浸式的互动体验。此外,品牌应积极参与文化对话,创造有意义的内容,避免单纯追求表面的流量和曝光率。
基于单片机protues仿真的智能烟雾温度监测预警系统设计(仿真图、源代码) 1、该电路方案使用了外部ADC、烟雾浓度监测、温度监测、数据显示、预警值设置及其超标预警、还有掉电数据保存EEPROM。 2、使用说明: 1:开机自动进入如上图界面 2:点击设置按钮,进入预警值设置界面,自动进入浓度预警值设置状态,点击 “加” 或者 “减” 修改数值。每次+5或-5。可软件修改。 3:再次点击设置按钮,进入温度预警值设置状态,点击 “加” 或者 “减” 修改数值。每次+1或-1。可软件修改。 4:再次点击设置按钮,返回主界面。
内容概要:本文详细介绍了基于三菱FX3U PLC和组态王软件的三层电梯控制系统的设计与实现。首先,文章阐述了PLC端子的定义和IO分配表,明确了各个输入输出端口的功能。接着,深入讲解了梯形图逻辑,如楼层判断、方向控制、门机控制等关键部分的实现方法,并提供了具体的梯形图代码示例。此外,还讨论了组态王的画面设计技巧,包括电梯井道动画、按钮交互效果以及楼层显示等。最后,分享了一些调试经验和常见问题的解决方案,如平层信号处理、防抖动措施等。 适合人群:从事工业自动化领域的工程师和技术人员,尤其是对PLC编程和组态软件有一定基础的人群。 使用场景及目标:适用于需要理解和掌握三菱PLC和组态王联合使用的场合,旨在帮助读者构建完整的三层电梯控制系统,提高系统稳定性和可靠性。 其他说明:文中不仅涵盖了硬件接线和软件编程的知识,还包括了许多实践经验,有助于读者在实际项目中避免常见的错误和陷阱。
内容概要:本文详细对比了递归与迭代两种编程方法,解释了它们在不同应用场景下的优缺点。文中通过多个选择题解析了递归基、递归参数等概念,强调了递归基的重要性,指出它是递归函数停止调用自身的条件。同时,通过实例展示了如何使用递归和迭代实现阶乘、斐波那契数列、数组求和等功能,并讨论了递归与迭代在内存占用、执行效率等方面的差异。此外,文章还探讨了递归和迭代在搜索算法(如广度优先搜索、深度优先搜索)、排序算法(如快速排序、归并排序)中的应用,指出了递归在处理树形结构和分治问题时的优势,以及迭代在处理有明确循环次数的任务时的高效性。 适合人群:具备一定编程基础的学习者,尤其是对递归和迭代概念存在疑惑的程序员。 使用场景及目标:①理解递归和迭代的基本概念及其在实际编程中的应用;②掌握递归基的作用,避免无限递归;③学会根据问题特点选择合适的算法实现方式,优化程序性能。 其他说明:本文不仅提供了理论知识,还通过具体的代码示例加深理解,建议读者在学习过程中动手实践,尝试将递归算法转换为迭代算法,以更好地掌握两者之间的转换技巧。
开关自动组装线体总图sw20可编辑_三维3D设计图纸_三维3D设计图纸.zip
内容概要:本文详细介绍了如何使用Python的SALib库进行Sobol全局灵敏度分析。首先解释了Sobol方法的基本概念,然后逐步展示了从定义参数空间、生成Sobol序列样本、构建目标函数到最后计算灵敏度指数的具体步骤。文中还讨论了参数范围设定、采样点选择以及二阶交互关闭等技巧,强调了这些因素对分析结果的影响。此外,提供了多个实例,包括线性组合、带噪声的函数、非线性函数等,展示了Sobol方法在不同场景下的应用效果。 适合人群:具有一定数学建模和编程基础的研究人员和技术开发者,尤其是从事数据分析、机器学习等领域的人士。 使用场景及目标:适用于需要评估多个输入参数对系统输出影响程度的场合,如工程设计、金融风险评估、环境科学等领域的模型优化和参数筛选。主要目标是帮助用户快速定位关键参数,减少不必要的试验次数,提高模型的可靠性和准确性。 其他说明:文章不仅提供了详细的代码示例,还分享了许多实用的经验和注意事项,如参数范围的合理设定、采样点数量的选择等,有助于读者更好地理解和应用Sobol方法。同时,文中提及的一些高级技巧(如关闭二阶交互以节省计算资源)也为处理大规模参数问题提供了有效的解决方案。
仿生青蛙sw20可编辑_三维3D设计图纸.zip
内容概要:本文详细介绍了六种不同类型的操作系统:批处理、分时、实时、网络、分布式和嵌入式操作系统。批处理操作系统以最大化吞吐量为目标,通过自动转接特性实现无人干预的连续作业处理;分时操作系统通过时间片轮换允许多个用户同时交互使用计算机资源;实时操作系统专注于严格的时间约束,确保任务在规定时间内完成,适用于工业控制、航空等领域;网络操作系统主要用于网络环境,提供网络通信和资源管理功能;分布式操作系统通过透明地提供网络资源给用户,让用户感觉像在使用单个计算机;嵌入式操作系统则针对资源受限的设备,如智能手机和物联网设备,具备小型化和专用性的特点。 适合人群:计算机科学专业学生、软件开发者以及对操作系统理论感兴趣的读者。 使用场景及目标:帮助读者理解各种操作系统的核心概念和应用场景,为选择合适的操作系统类型提供理论依据。具体目标包括:①掌握批处理系统如何提高处理效率;②理解分时系统如何实现多用户交互;③学习实时系统的任务调度和时间约束管理;④了解网络操作系统在网络资源管理中的作用;⑤认识分布式系统的资源透明共享机制;⑥熟悉嵌入式系统在特定设备中的应用。 其他说明:文中通过选择题的形式加深对各操作系统特性的理解,并提供了具体的实例和应用场景,有助于读者更好地掌握相关知识点。
11ZJ401 楼梯栏杆建筑土木工程.doc
内容概要:本文详细介绍了如何使用Matlab、YALMIP和CPLEX求解带储能的微电网优化调度问题。首先,构建了一个包含光伏、风电、柴油机和储能电池在内的微电网系统模型,目标是最小化总运行成本并满足负荷需求。文中展示了如何定义决策变量、处理关键约束(如功率平衡、储能SOC限制、充放电互斥等),以及设定目标函数。此外,还提供了具体的求解步骤和调试技巧,强调了时间耦合约束的重要性及其正确处理方法。最后,通过实例验证了所提出方法的有效性和高效性。 适合人群:对电力系统优化调度感兴趣的科研人员、工程师和技术爱好者。 使用场景及目标:适用于希望深入了解微电网优化调度机制的人群,尤其是那些想要掌握如何利用现代优化工具解决复杂电力系统问题的技术人员。目标是帮助读者理解并能够独立搭建类似的优化模型。 其他说明:文中不仅提供了详细的理论解释,还有丰富的代码示例,便于读者理解和实践。同时指出了一些常见的错误和注意事项,有助于提高模型的成功率和准确性。
锁螺丝螺母设备sw23_三维3D设计图纸_三维3D设计图纸.zip
内容概要:本文详细对比了传输层协议TCP和UDP的特点及其应用场景。TCP是面向连接的协议,提供可靠的数据传输服务,通过确认应答、重传机制、拥塞控制等技术确保数据的完整性和顺序性。UDP则是无连接的协议,提供尽力而为的服务,不保证数据的可靠性,但具有更高的传输效率。文章还介绍了TCP的三次握手、滑动窗口、拥塞控制机制,以及UDP的报文结构、端口号使用、错误检测机制等。此外,文中通过选择题的形式探讨了两者在不同场景下的适用性,如TCP适用于文件传输、网页浏览等需要高可靠性的场景,而UDP则适用于实时音视频传输等对延迟敏感的场景。 适合人群:计算机网络相关专业的学生、网络工程师以及对传输层协议感兴趣的IT从业者。 使用场景及目标:①帮助读者理解TCP和UDP的工作原理及差异;②指导读者根据实际需求选择合适的传输层协议;③为网络编程和系统设计提供理论依据。 其他说明:本文以问答形式呈现知识点,便于记忆和理解。同时,文中涉及的选择题不仅考察了基本概念,还涵盖了协议的具体实现细节,有助于加深读者对传输层协议的理解。
电磁领域系列仿真模拟教程,每个包10几个教程,从基础到精通,案例多多。
数据说明: 地震数据集是一个广泛的资料收集,包含了从1990年到2023年全世界记录的所有地震的信息。该数据集包含约300万条记录,每条记录代表一次特定的地震事件。数据集中的每个条目都包含一组与地震相关的属性,如事件的日期和时间、地理位置(纬度和经度)、地震的震级、震中深度、用于测量的震级类型、受影响区域以及其他相关信息。
2019学年第一学期期末考试《土木工程制图》大作业.doc.doc
汽车空调出风口叶片组装设备sw23可编辑_三维3D设计图纸_三维3D设计图纸.zip