社区
C#
帖子详情
获取一个网页数据返回的编码类型是gzip,我该怎么解压缩
qugui
2005-12-24 05:44:43
我是用HttpWebResponse的GetResponseStream()取得的返回流,但此流是经过gzip编码的,我该如何解开.下了ICSharpCode.SharpZipLib.dll不行.
请高人指点一下.
...全文
750
15
打赏
收藏
获取一个网页数据返回的编码类型是gzip,我该怎么解压缩
我是用HttpWebResponse的GetResponseStream()取得的返回流,但此流是经过gzip编码的,我该如何解开.下了ICSharpCode.SharpZipLib.dll不行. 请高人指点一下.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
qugui
2005-12-25
打赏
举报
回复
我现在用下面的方法:
public static byte[] Compress(Stream Source)
{
Debug.Assert(null != Source);
Source.Seek(0, SeekOrigin.Begin);
MemoryStream objMem = new MemoryStream();
GZipOutputStream objGzip = new GZipOutputStream(objMem);
const int BUFFER_SIZE = 1024 * 10;
byte[] arrBuffer = new byte[BUFFER_SIZE];
int nGetedCount = 0;
do
{
nGetedCount = Source.Read(arrBuffer, 0, BUFFER_SIZE);
objGzip.Write(arrBuffer, 0, nGetedCount);
} while(nGetedCount>0);
objGzip.Finish();
byte[] arrResult = objMem.ToArray();
objGzip.Close(); //压缩完成后,输出流就会被关闭
objGzip = null;
objMem.Close();
objMem = null;
return arrResult;
}
调用:
Stream ReceiveStream = res.GetResponseStream();
if(res.ContentEncoding=="gzip")
{
//StreamReader sr = new StreamReader( ReceiveStream);
//Char[] read = new Char[256];
//int count = sr.Read( read, 0, 256 );
//while (count > 0)
//{
// String str = new String(read, 0, count);
// strResult += str;
// count = sr.Read(read, 0, 256);
//}
using(StreamWriter sw = new StreamWriter("ata.txt",true))
{
sw.WriteLine(DateTime.Now.ToLongTimeString());
sw.WriteLine(ReceiveStream);
}
//strResult=DeCompress(strResult);
byte [] bt= Compress(ReceiveStream);
Encoding encode = System.Text.Encoding.GetEncoding("big5");
strResult = encode.GetString(bt);
}
返回错误:System.NotSupportedException: 此流不支持查找操作。在Source.Seek(0, SeekOrigin.Begin);
写入文件的信息为:System.Net.ConnectStream
麻烦你看看那里错了?
netmicro
2005-12-25
打赏
举报
回复
HttpWebResponse 里面有个 ContentLength 属性(可能后面有个64,不记得,懒得查资料),以这个为准,直接从 ReceiveStream 里读取字节数组、写入 MemoryStream,写够 ContentLength 个字节之后,MemoryStream.Seek(0, SeekOrigin.Begin) 倒回开头,然后用 GZipInputStream 包装,再解压
不要经过string,不要经过char,只能以byte[]为中介
netmicro
2005-12-25
打赏
举报
回复
你应该直接将 res.GetResponseStream() 传入 GZipInputStream 进行解压缩
或者中间通过 MemoryStream 作缓冲,但是绝对不能通过 string 作缓冲
因为转换成 string 就已经变形了(因为字符编码的问题),然后你还把它当成 Base64 来转成 byte[],绝对乱套了
qugui
2005-12-25
打赏
举报
回复
static public string DeCompress(string comppressedString)
{
int size = 0;
string uncompressString = string.Empty;
StringBuilder sb = new StringBuilder(40960);
int totalLength = 0;
byte[] byteInput = System.Convert.FromBase64String(comppressedString);
byte[] writeData = new byte[4096];
Stream s = new GZipInputStream(new MemoryStream(byteInput));
while(true)
{
size = s.Read(writeData,0,writeData.Length);
if(size > 0)
{
totalLength += size;
sb.Append(System.Text.Encoding.UTF8.GetString(writeData,0,size));
}
else
{
break;
}
}
s.Flush();
s.Close();
return sb.ToString();
}
调用:
部份:
Stream ReceiveStream = res.GetResponseStream();
if(res.ContentEncoding=="gzip")
{
StreamReader sr = new StreamReader( ReceiveStream);
Char[] read = new Char[256];
int count = sr.Read( read, 0, 256 );
while (count > 0)
{
String str = new String(read, 0, count);
strResult += str;
count = sr.Read(read, 0, 256);
}
using(StreamWriter sw = new StreamWriter("ata.txt",true))
{
sw.WriteLine(DateTime.Now.ToLongTimeString());
sw.WriteLine(strResult);
}
strResult=DeCompress(strResult);
netmicro
2005-12-25
打赏
举报
回复
我找到的用GZip的服务器,内容可以解压,但是没有GZip Footer,不知道是不是国际规范
你读取信息的服务器是哪个?告诉我让我好测试一下
---------
不过内容大概就是下面这样的:
// 准备请求
HttpWebRequest request = (HttpWebRequest)
WebRequest.Create("http://gamesir.enorth.com.cn/bbsindex.html");
request.ProtocolVersion = new Version(1, 1);
request.Accept = "*/*";
request.Headers.Add("Accept-Encoding: gzip, deflate");
request.KeepAlive = true;
request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)";
// 读取回应
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Console.WriteLine("{0}", response.StatusDescription);
foreach(string key in response.Headers.AllKeys)
{
Console.WriteLine("{0}: {1}", key, response.Headers[key]);
}
// 将回应全部读入一个 MemoryStream:
MemoryStream ms = new MemoryStream();
try
{
Stream res = response.GetResponseStream();
byte[] buffer = new byte[8192];
while (true)
{
int read = res.Read(buffer, 0, 8192);
if (read == 0)
{
// 如果服务器用的是 gzip 的话,只能靠读不出更多数据来判断是否已经读完
Console.WriteLine("Response is terminated due to zero byte reception.");
break;
}
else
{
ms.Write(buffer, 0, read);
}
}
}
catch (Exception e)
{
// 抛出异常也可能表示已经读完
Console.WriteLine("Response is terminated due to exception " + e.Message);
}
finally
{
response.Close();
}
Console.WriteLine("Response has {0} bytes.", ms.Length);
// ms 倒回开头:
ms.Seek(0, SeekOrigin.Begin);
// 用 GZipInputStream 包裹:
GZipInputStream gzip = new GZipInputStream(ms);
// 用 GZipInputStream 读取 ms 的内容并写入 ms2:
MemoryStream ms2 = new MemoryStream();
try
{
byte[] buffer = new byte[1]; // 一点一点读——因为这个服务器的gzip没有Footer,读到结尾的时候会出错,所以为了把最后一个字节都读出来,只能一点一点读
while (true)
{
int read = gzip.Read(buffer, 0, 1);
if (read == 0) break;
ms2.Write(buffer, 0, read);
}
}
catch (Exception e)
{
Console.WriteLine("Exception! " + e.ToString());
}
Console.WriteLine("Unzipped.");
// 将 ms2(解压后的内容)保存到文件
fs = File.Create("response.txt");
ms2.Seek(0, SeekOrigin.Begin);
ms2.WriteTo(fs);
fs.Close();
Console.WriteLine("Written to response.txt.");
Console.ReadLine();
netmicro
2005-12-25
打赏
举报
回复
我想我还是去研究一下Transfer-Encoding: chunked然后再写代码给你看好了
netmicro
2005-12-25
打赏
举报
回复
[返回错误:System.NotSupportedException: 此流不支持查找操作。在Source.Seek(0, SeekOrigin.Begin);]
你还没懂我的意思就开始写代码了
我的意思是,将Response流的内容通通复制到MemoryStream里面(这时候MemoryStream处于写入状态,位置在末尾)
然后将 MemoryStream 倒回开头,准备读取
然后用 GZipInputStream 读 MemoryStream
------------------------
另外,你怎么越改越偏离正道……Response已经GZip了,你还继续Compress?我太佩服你了
marvelstack
2005-12-25
打赏
举报
回复
try
http://hardrock.cnblogs.com/archive/2005/12/23/303209.html
netmicro
2005-12-25
打赏
举报
回复
给我看看你是怎么用 SharpZipLib 的
qugui
2005-12-24
打赏
举报
回复
TO:singlepine(小山)
你的是文件打开,我的是返回流,用不上呀.
qugui
2005-12-24
打赏
举报
回复
我看了一下,他返回的消息中有汉字差不多的字样.而ICSharpCode.SharpZipLib.dll压缩后的是没有这样的字符.
singlepine
2005-12-24
打赏
举报
回复
试试这个
http://dev.csdn.net/develop/article/67/article/63/63929.shtm
netmicro
2005-12-24
打赏
举报
回复
哪个服务器这么恶心……
ICSharpCode.SharpZipLib.dll 怎么不行?
它是我找到的第一个支持GZip加解压的库啊
qugui
2005-12-24
打赏
举报
回复
不发送也一样的,服务器指定用gzip返回.我现在用的是VS2003.
用不到那个类呀!
netmicro
2005-12-24
打赏
举报
回复
发送HTTP请求的时候不要发送
Accept-Encoding: gzip
这样服务器就不会gzip给你了吧?
--------
.NET 2.0 里面有个 System.IO.Compression 命名空间,据说就是处理gzip压缩的,但是我没研究过
java源码包---java 源码 大量 实例
Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机的流程及操作:
获取
系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每
一个
EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除,从账户中取出amt,如果amt>账户余额抛出异常,
一个
实体Bean可以表示不同的
数据
实例,我们应该通过主键来判断删除哪个
数据
实例…… ejbCreate函数用于初始化
一个
EJB实例 5个目标文件,演示Address EJB的实现,创建
一个
EJB测试客户端,得到名字上下文,查询jndi名,通过强制转型得到Home接口,getInitialContext()函数
返回
一个
经过初始化的上下文,用client的getHome()函数调用Home接口函数得到远程接口的引用,用远程接口的引用访问EJB。 EJB中JNDI的使用源码例子 1个目标文件,JNDI的使用例子,有源代码,可以下载参考,JNDI的使用,初始化Context,它是连接JNDI树的起始点,查找你要的对象,打印找到的对象,关闭Context…… ftp文件传输 2个目标文件,FTP的目标是:(1)提高文件的共享性(计算机程序和/或
数据
),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户可以在终端上直接地使用它,但是它的主要作用是供程序使用的。本规范尝试满足大型主机、微型主机、个人工作站、和TACs 的不同需求。例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,
获取
系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每
一个
EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天通信演示代码 2个目标文件,
一个
服务器,
一个
客户端。 Java Telnet客户端实例源码
一个
目标文件,演示Socket的使用。 Java 组播组中发送和接受
数据
实例 3个目标文件。 Java读写文本文件的示例代码 1个目标文件。 java俄罗斯方块
一个
目标文件。 Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密 Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。 设定字符串为“张三,你好,我是李四” 产生张三的密钥对(keyPairZhang) 张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节 通过网络或磁盘等方式,把公钥
编码
传送给李四,李四接收到张三
编码
后的公钥,将其解码,李四用张三的公钥加密信息,并发送给李四,张三用自己的私钥解密从李四处收到的信息…… Java利用DES私钥对称加密代码实例 同上 java聊天室 2个目标文件,简单。 java模拟掷骰子2个 1个目标文件,输出演示。 java凭图游戏
一个
目标文件,简单。 java求
一个
整数的因子 如题。 Java生成密钥的实例 1个目标文件 摘要:Java源码,算法相关,密钥 Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,通常应对私钥加密后再保存、如何从文件中得到公钥
编码
的字节数组、如何从字节数组解码公钥。 Java
数据
压缩与传输实例 1个目标文件 摘要:Java源码,文件操作,
数据
压缩,文件传输 Java
数据
压缩与传输实例,可以学习一下实例化套按字、得到文件输入流、压缩输入流、文件输出流、实例化缓冲区、写入
数据
到文件、关闭输入流、关闭套接字关闭输出流、输出错误信息等Java编程小技巧。 Java数组倒置 简单 Java图片加水印,支持旋转和透明度设置 摘要:Java源码,文件操作,图片水印 util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码加以改进做成小工具。 Java右键弹出菜单源码 简单 Java圆形按钮实例代码,含注释 两个目标文件,自绘button。 Java圆形电子时钟源代码 1个目标文件 内容索引:JAVA源码,系统相关,电子钟 用JAVA编写的指针式圆形电子钟,效果图如下所示,其实代码很简单,希望对你有帮助。 Message-Driven Bean EJB实例源代码 2个目标文件 摘要:Java源码,初学实例,EJB实例 Message-Driven Bean EJB实例源代码,演示
一个
接收购物订单的消息驱动Bean,处理这个订单同时通过e-mail的形式 //给客户发
一个
感谢消息,消息驱动Bean必须实现两个接口MessageDrivenBean和MessageListener 在对象创建的过程中将被容器调用,onMessage函数方法接收消息参数,将其强制转型为合适的消息
类型
,同时打印出消息的内容。同时
一个
mail note将被发送给消息发送者,发送
一个
e-mail通知给由recipient参数确定的e-mail账号,查询mail 服务器的会话…… 还包括消息客户端程序,通过连接创建会话。创建发送者和映射消息。发送消息,同时对文本进行少量修改,发送end-of-messages消息,最后关闭连接。 Tcp服务端与客户端的JAVA实例源代码 2个目标文件 摘要:Java源码,文件操作,TCP,服务器 Tcp服务端与客户端的JAVA实例源代码,
一个
简单的Java TCP服务器端程序,别外还有
一个
客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3个目标文件 第一步:运行ServerData.java 启动服务器,然后服务器处于等待状态 第二步:运行LoginData.java 启动(客户端)登陆界面 输入用户名 ip为本机localhost 第三步:在登陆后的界面文本框输入文本,然后发送 可以同时启动多个客户端 实现群聊。 浮动的广告 嵌套在html中 各种EJB之间的调用示例 7个目标文件 摘要:Java源码,初学实例,EJB调用实例 各种EJB之间的调用源码示例,用远程接口的引用访问EJB、函数将被FirstEJB调用,同时它将调用secondEJB 基于JAVA的UDP服务器模型源代码 2个目标文件 摘要:Java源码,网络相关,UDP 基于JAVA的UDP服务器模型源代码,内含UDP服务器端模型和UDP客户端模型两个小程序,向JAVA初学者演示UDP C/S结构的原理。 简单聊天软件CS模式 2个目标文件
一个
简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 简单 EJB的真实世界模型(源代码) 15个目标文件 摘要:Java源码,初学实例,基于EJB的真实世界模型 基于EJB的真实世界模型,附源代码,部分功能需JSP配合完成。 J2ME优化压缩PNG文件 4个目标文件 内容索引:JAVA源码,综合应用,J2me游戏,PNG,图形处理 这是个J2ME控制台程序,它能剔除PNG文件中的非关键
数据
段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 内容索引:Java源码,窗体界面,3DMenu Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,不一定非要局限于游戏吧,RES、SRC资源都有,都在压缩包内。 Java zip压缩包查看程序源码 1个目标文件 摘要:Java源码,文件操作,压缩包查看 Java zip压缩包查看程序,应用弹出文件选择框,选择ZIP格式的压缩文件,可以像Winrar软件一样查看压缩文件内部的文件及文件夹,源码截图如上所示。 Java 数字签名、数字证书生成源码 2个目标文件 摘要:JAVA源码,系统相关,数字签名,数字证书 Java 数字签名、数字证书的相关实例。 关于数字签名:产生RSA密钥对(myKeyPair),得到RSA密钥对,产生Signature对象,对用私钥对信息(info)签名,用指定算法产生签名对象,用私钥初始化签名对象,将待签名的
数据
传送给签名对象(须在初始化之后),用公钥验证签名结果,使用公钥初始化签名对象,用于验证签名。 数字证书:从文件中读取数字证书,生成文件输入流,输入文件为c:/mycert.cer,
获取
一个
处理X.509证书的证书工厂…… Java+ajax写的登录实例 1个目标文件 内容索引:Java源码,初学实例,ajax,登录
一个
Java+ajax写的登录实例,附有JAVA源文件,JAVA新手朋友可以学习一下。 JAVA+JSP的聊天室 8个目标文件 简单 JavaScript万年历 显示出当前时间及年份,还可以选择年份及月份和日期 Java编写的HTML浏览器
一个
目标文件 摘要:Java源码,网络相关,浏览器 Java编写的HTML浏览器源代码,
一个
很简单甚至不算是浏览器的HTML浏览器,使用方法: 可直接输入文件名或网络地址,但必需事先连入网络。 Java编写的山寨QQ,多人聊天+用户在线 21个目标文件 摘要:JAVA源码,媒体网络,山寨QQ,Java聊天程序 Java编写的山寨QQ,多人聊天+用户在线,程序分服务端和客户端,典型C/S结构, 当用户发送第一次请求的时候,验证用户登录,创建
一个
该qq号和服务器端保持通讯连接得线程,启动该通讯线程,通讯完毕,关闭Scoket。 QQ客户端登录界面,中部有三个JPanel,有
一个
叫选项卡窗口管理。还可以更新好友列表,响应用户双击的事件,并得到好友的编号,把聊天界面加入到管理类,设置密码保护等。 Java编写的
网页
版魔方游戏 内容索引:JAVA源码,游戏娱乐,魔方,
网页
游戏 Java编写的
网页
版魔方游戏,编译后生成.class文件,然后用HTML去调用,不过运行时候需要你的浏览器安装有运行Class的插件。Java源代码实现部分,比较有意思,也具参考性。像坐标控制、旋转矩阵、定时器、生成图像、
数据
初始化、矩阵乘法、坐标旋转、判断是否是顺时针方向排列、鼠标按下、放开时的动作等,都可在本源码中得以体现。 Java编写的显示器显示模式检测程序 2个目标文件 内容索引:JAVA源码,系统相关,系统信息检测 用JAVA编写了
一个
小工具,用于检测当前显示器也就是显卡的显示模式,比如分辨率,色彩以及刷新频率等。 Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字 Java波浪文字,
一个
利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象,得到Graphics实例,得到Image实例,填充颜色数组
数据
,初始化颜色数组。 Java吃豆子游戏源代码 6个目标文件 内容索引:JAVA源码,游戏娱乐,JAVA游戏源码 JAVA编写的吃豆子游戏,类似疯狂坦克一样,至少界面有点像。大家可以看截图。 Java从网络取得文件 1个目标文件 简单 Java从压缩包中提取文件 1个目标文件 简单 Java存储与读取对象 1个目标文件 如题 Java调色板面板源代码 1个目标文件 摘要:Java源码,窗体界面,调色板 使用Java语言编写的一款用于反映颜色变化的面板,也就是大家熟悉的颜色调色板演示程序。原理是初始化颜色选择按钮,然后为颜色选择按钮增加事件处理事件,最后实例化颜色选择器。 Java二进制IO类与文件复制操作实例 16个目标文件 内容索引:Java源码,初学实例,二进制,文件复制 Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码,文件操作,权限控制 Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰效果 Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、绘制火焰效果的X坐标,Y坐标、得到X坐标,Y坐标值、绘制火焰效果Image…… Java加密解密工具集 JCT v1.0源码包 5个目标文件 内容索引:JAVA源码,综合应用,JCT,加密解密 WDSsoft的一款免费源代码 JCT 1.0,它是
一个
Java加密解密常用工具包。 Java局域网通信——飞鸽传书源代码 28个目标文件 内容索引:JAVA源码,媒体网络,飞鸽传书 Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和客户端 2个目标文件,如题。 Java目录监视器源程序 9个目标文件 内容索引:JAVA源码,综合应用,目录监视 用JAVA开发的
一个
小型的目录监视系统,系统会每5秒自动扫描一次需要监视的目录,可以用来监视目录中文件大小及文件增减数目的变化。 Java日期选择控件完整源代码 14个目标文件 内容索引:JAVA源码,系统相关,日历,日期选择 Java语言开发的简洁实用的日期选择控件,源码文件功能说明: [DateChooser.java] Java 日期选择控件(主体类) [public] [TablePanel.java] 日历表格面板 [ConfigLine.java] 控制条类 [RoundBox.java] 限定选择控件 [MonthMaker.java] 月份表算法类 [Pallet.java] 调色板,统一配色类 Java扫雷源码 Java生成自定义控件源代码 2个目标文件 Java实现HTTP连接与浏览,Java源码下载 1个目标文件 摘要:Java源码,网络相关,HTTP Java实现HTTP连接与浏览,Java源码下载,输入html文件地址或网址,显示页面和HTML源文件,一步步的实现过程请下载本实例的Java源码,代码中包括丰富的注释,对学习有帮助。 Java实现的FTP连接与
数据
浏览程序 1个目标文件 摘要:Java源码,网络相关,FTP Java实现的FTP连接与
数据
浏览程序,实现实例化可操作的窗口。 部分源代码摘录: ftpClient = new FtpClient(); //实例化FtpClient对象 String serverAddr=jtfServer.getText(); //得到服务器地址 String user=jtfUser.getText(); //得到用户名 String pass=jtfPass.getPassword().toString(); //得到密码 ftpClient.openServer(serverAddr); //连接到服务器 ftpClient.login(user,pass); //在服务器上注册 InputStream is=ftpClient.list(); //得到服务器目录与文件列表输入流 StringBuffer info=new StringBuffer(); //实例化StringBuffer对象,用于输出信息 int ch; while ((ch=is.read())>=0){ //未读完列表,则继续 info.append((char)ch); //增加信息 …… Java实现的点对点短消息发送协议(smpp)开发包源码 70个目标文件,如题。 Java实现的放大镜效果附有源文件 1个目标文件 内容索引:Java源码,初学实例,放大镜,哈哈镜 Java实现的放大镜效果附有源文件,编译环境最近出了问题,因此没有测试,也没有抓到图,希望各位自行测试一下。 Java实现跟踪鼠标运行坐标的源码 1个目标文件 内容索引:JAVA源码,系统相关,鼠标钩子 Java编写的
一个
小程序,用以实现跟踪鼠标的运行位置(坐标),程序很小,很实用,暂时抓不到截图。 Java实现移动的遮照效果 1个目标文件 摘要:Java源码,初学实例,遮照效果 Java实现移动的遮照效果,先实现椭圆形的遮罩,实例化媒体加载器,最后在创建缓冲区中的图像形成遮罩效果,而且它是会移动的。 Java鼠标拖拽功能 1个目标文件 Netbeans平台下实现的JAVA 拖放效果的
一个
实例,包括源代码和所需的图片资源。 (运行后会全屏显示窗体,没有关闭按钮,可使用快捷键Ctrl + F4关闭~) Java图片倒影效果实例源码 1个目标文件 摘要:Java源码,图形操作,图片倒影 Java图片倒影效果实例源码,有意思也很有参考价值的
一个
Java图像处理小程序,先读取图像然后进行图像重绘,产生倒影的效果,仅供参考。 java网络五子棋的源代码 7个目标文件 AVA网络五子棋,实现基本功能,无多余花哨内容,适合大学生课程设计学习使用,内含完整可运行源代码及运行指导视频,Eclipse环境。 Java文件选择器源代码 2个目标文件 摘要:Java源码,文件操作,文件选择器 Java文件选择器源代码 Java文字跑马灯与信息窗口 1个目标文件 摘要:Java源码,文件操作,跑马灯 Java文字跑马灯效果与信息窗口,将一段文字按照滚动的方式显示出来,在
网页
设计中比较常见,本例使用Java实现文字跑马灯效果。 Java写的ATM机取款模拟程序 9个目标文件 内容索引:JAVA源码,综合应用,ATM,JAVA,模拟 基于Java技术,只实现了ATM机的取款过程,有兴趣和有能力的高手可以再加以改进,这样就更完美了。可作为Java初学者《面向对象》编程的
一个
很好范例。 在这个程序中,用到以下JAVA类库: dataAccess(
数据
操作)类:包含用于
数据
库的相关操作 atmScreen(ATM屏幕)类:主要创建各操作窗体和相应按钮事件 Account(用户帐户)类:包含用户信息的验证、余额查询和扣钱等方法 readCard(读卡机)类:包含读取用户卡号和退卡(退出系统) moneyMac(取钱机)类:只用于打印清单 Atm(系统)类:系统主方法的开始,负责调用其他类 Java写的巨型LCD液晶时钟显示屏 8个目标文件 内容索引:JAVA源码,综合应用,电子钟,LCD,液晶
一个
巨型LCD数字电子时钟,用JAVA写的,运行截图如上示。它还带有右键菜单,LCD颜色可以变换等。 Java用
GZIP
压缩解压文件 1个目标文件 摘要:Java源码,文件操作,
GZIP
Java使用
GZIP
压缩解压文件,如果你正在使用Java开发文件压缩或解压的功能,那么
Gzip
应该来说是比较值得参考的,那么本实例或许正是您需要的,Java基于
Gzip
的文件压缩与解压程序源代码,供源码下载者参考。 Java用Zip压缩多个文件实例源码 1个目标文件 摘要:Java源码,文件操作,压缩文件 Java用Zip压缩多个文件,
一个
Java文件操作小实例,用ZIP同进压缩多个文件,实际是打开文件读取,然后再利用ZipEntry实例化待压缩的条目列表,将ZIP条目列表写入输出流,从源文件得到文件输入流,写入缓冲
数据
等。 Java游戏使命的召唤源码 5个目标文件 内容索引:JAVA源码,游戏娱乐,Java游戏源码,使命的召唤 Java游戏使命的召唤源码,又名:Call of Duty,MFORMA超精典游戏,有兴趣的可以重新编译学习一下。 Java源码的仿QQ聊天程序 如题 Java中的Blowfish对称密钥加密算法类和实例 2个目标文件 内容索引:Java源码,算法相关,Blowfish,JAVA加密,对称密钥算法 JAVA中的Blowfish加密属于对称密钥算法,如果知道密钥,则可以对加密后的
数据
解密,但如果如果不知道密钥,基本上是不可能的,因此,这就决定了它的先天不足,就是带来的密钥的管理问题。 Java中的SSL及HTTPS协议实例源码 1个目标文件 摘要:Java源码,网络相关,HTTPS协议 Java中的SSL及HTTPS协议实例源码,使用SSL套接字的HTTPS服务器端,接受客户端的
一个
连接,并
返回
Hello,world. 本例中使用8080端口创建SSL服务器套接字,
返回
缺省的SocketFactory对象,生成PrintWriter对象,用于输出信息。 Java自定义光标程序源码 1个目标文件 摘要:Java源码,窗体界面,自定义光标 Java自定义光标程序源码,将光标定义成其它形式的图标,利用ToolKit对象得到图像,实例化自定义光标对象,增加组件等。 Jav动画图标源码(显示GIF图像) 1个目标文件 摘要:Java源码,图形操作,动画图标 Jav动画图标源码(显示GIF图像),学习如何连续加载GIF图像从而生成动画图标,先创建
一个
用于显示动画图标的数组,创建构造函数,初始化数组,重载组件绘制方法,实例化Timer对象显示动画,增加组件到窗口上。 JSP树型菜单 DTree html+js实现 Notebook源码,Java记事本 2个目标文件 摘要:Java源码,文字字符,Java记事本 Java记事本:Notebook源码下载,虽然是个功能不多的记事本,但通过这个Java程序你可以学习到不少小技巧呢!比如创建界面、安装各种监听器,在窗体上布局主菜单,保存用户编辑的文件,以及如何使用"另存为"对话框保存文件,如何新建和打开
一个
文档等,源代码内包括了相当多的注释,是Java新手学习JAVA编程的好范例。 当用户按下窗口的“关闭”时,会自动调用此方法。 PDF分割与合并源代码 3个目标文件 能把
一个
PDF分割成多个单页的PDF,把多个PDF合并成
一个
PDF。 QR解码的Java实现程序 25个目标文件 内容索引:JAVA源码,媒体网络,QR解码,Java 用Java实现QR解码的源程序代码。 编译原理--LR(1)分析表构造(JAVA) 8个目标文件 如题 传奇私服登录器Java版附源代码 2个目标文件,如题。 单机版java五子棋V1.1 5个目标文件 完整的单机版java五子棋游戏,主要是判定胜负的算法,使用数组进行遍历,很容易理解。 很强的Java加密解密算法源码 3个目标文件 内容索引:Java源码,算法相关,JAVA算法,加密解密 很强的JAVA加密、解密算法源码,一共有6种算法可供选择,另外还可以直接生成ZIP压缩文件。 简单的注册与登录功能 6个目标文件
一个
简单的用户登录界面 要连接
数据
库的 有登陆 注册功能 仅供初学者学习 简单模拟的J2ME潜艇大战源代码 4个目标文件 内容索引:JAVA源码,游戏娱乐,J2ME手机游戏,潜艇大战 简单模拟的J2ME手机游戏潜艇大战的源代码,界面有些粗糙,不过基本功能都实现了,发弹,躲闪等,可以帮助新手提高J2ME技术。 局域网广播系统java源码 如题 java游戏 可实现网上对战和人机对战 7个目标文件 雷电游戏JAVA版源程序 8个目标文件 这是
一个
简单的Java仿雷电游戏(源码见包内),共设置有三关三个小BOSS。采用有GreenJVM发布,因此可以运行在未装载JRE的Windows系统之上。 网络蚂蚁Java版 14个目标文件 用Java实现的网络蚂蚁,功能强大,方便上传下载,断点续传等操作
网页
浏览器 如题 java学生成绩系统(图形界面) 14个目标文件 如题。 java学生课程管理系统 6个目标文件 如题。
一个
较初级的EJB商业应用的例子 如题
一个
支持servlet的web服务器 14个目标文件 如题。 用Java加密类实现DES、RSA及SHA的加密算法 9个目标文件 如题。 用java写的SFTP代码 用java实现的Tftp(Sftp)客户端与服务器程序。在这个程序中用到了
一个
“状态”的机制:客户端与服务器端在开始运行时有相同的状态,通过用户的输入或程序内部运行的机制,程序可以转到不同的状态,在不同的状态下程序实现了不同的功能。 用jdom解析xml 1个目标文件 要使用jdom解析xml文件,需要下载jdom的包,我使用的是jdom-1.1。解压之后,将lib文件夹下的.jar文件以及build文件夹下的jdom.jar拷贝到工程文件夹下,然后就可以使用jdom操作xml文件了。 copass源代码 Compass是
一个
强大的,事务的,高性能的对象/搜索引擎映射(OSEM:object/search engine mapping)与
一个
Java持久层框架. Compass实现了通过注册Hibernate的相关事件实现了
数据
的实时索引.. DataBuffer在Java中使用ADO.NET 本源码的作者对ADO.Net有着相当深厚的感情,有着对JAVA中DataBuffer类库运用的出色理解。它是开源项目javadesktop中的
一个
子项目,通过它你可以真正的理解DataSet、DataTable、DataRow……类库的使用。对这方面不太熟的开发者绝对有帮助。 HAHA CHAT Java仿QQ聊天程序源代码 iCHAT聊天室基于Java 内容索引:JAVA源码,媒体网络,iChat,Java聊天室 iChat LE 1.1版源码,
一个
比较大型的JAVA版聊天室程序,可能要用到DLL文件,压缩包内已经有了,一年前的程序。 IP定位器 J2ME黑白棋游戏手机版 v2.1完整源码 J2ME冒险游戏CASPER源代码 J2me月光战机游戏源码 JasperReports 报表类库v3.5 Java24点游戏逼真图形版代码 Java 3D魔方游戏源码及中文注释包 内容索引:JAVA源码,游戏娱乐,JAVA3D,魔方游戏 很强的JAVA 3D魔方游戏,这是源码及中文注释包,作者的开发文档和思路都在里面,对学习很有帮助! allin.dev 重载了ListView,更好的实现! copass源代码 Java (Jsp)制作简单的表单程序 java Socket通信实现 Java 版的酒店系统,貌似完整 Java 电梯模拟程序 v2.0 Java 飞机订票 Java 高考信息管理系统 SQL
数据
库 java
一个
消息发布网站 Java+MsSQL超市进销存(毕业设计及答辩资料) Java+sqlserver2000做的员工管理系统 Java+SQL信用卡管理系统源代码 Java+XML日程提醒系统 Java+XML写的RSS阅读器 JAVA版Swing星际争霸游戏源代码 Java半透明图片实现的步骤及源代码 JAVA帮助视图组件库 Help GUI 1.1源代码 Java毕业论文:搜索引擎系统附源代码 JAVA毕业设计_员工管理系统含文档 Java毕业设计一款J2me飞行射击游戏 Java仓库管理系统,Access
数据
库 Java超市管理,SQL2000+源代码 Java超市进销存系统 Java大型CERP进销存系统 Java电子相册源码 Java赌神游戏网络版源代码 JAVA短信网关平台(值得一看) Java多用户聊天室程序(毕业设计) Java仿Vista界面风格的登录窗口 Java仿千千静听音乐播放器源代码 Java火影忍者游戏源代码 Java机车狂飙源代码 JAVA开发的打字软件源程序 Java开发的简单WEB服务器源码 Java聊天程序(JBuilder) Java聊天软件Visual Chat v1.91源码 Java模仿的MSN聊天软件 Java企业人事管理系统源码 JAVA轻量级的MVC框架应用实例 Java软件度量源码 Java声音播放程序源代码 JAVA实现CLDC与MIDP底层编程的代码 JAVA实现超级玛丽 Java实现的视频播放程序源码 Java手机短信项目源码 Java手机游戏大富翁源代码+注释 Java手机与计算机互发彩信源码 Java坦克大战网络对战版源代码 Java跳棋(基于SWT) Java通讯录手机版源码 Java图片翻折,将图像压扁 Java图书馆管理系统源程序 JAVA图书馆管理系统源码 Java图像文件的缩小与放大 Java推箱子游戏(50关+音效) JAVA网络抓包程序 Java文件切割器源代码 java项目源码在线相册系统 Java写的天气预报软件 Java写的图片幻灯片切换特效 Java写的
一个
mp3播放器 Java学生信息管理系统源码包 Java用的在线地图浏览模块 Java游戏沙丘城堡源代码 Java游戏中斜视角编辑器及引擎源代码 Java约瑟夫环演示Applet源码 Java中的EJB编程实例代码 Java转换xml JLoading Java版的Mp3下载工具 JSP 动态
数据
菜单 JSP 学生管理系统(全部代码+
数据
库) jsp+servlet+javabean+mysql党员信息管理系统 jsp高校科研项目管理系统 JSP开发的项目跟踪系统 jsp生产管理系统 msn聊天程序Java仿真代码 P2P--多用户在线聊天室(Java源码) P2P源码 Azureus 2.5.0.2(JAVA) Skype 4.0 Java版源码及开发文档 SnakeScript Java游戏脚本引擎 v1.1 Tsinghua IP 清华大学学生写的
一个
有关IP的Java程序 Visualvm 基于JAVA的CPU硬件资源管理器源程序 weblogic+j2ee构建音乐网站(原代码+
数据
库) web综合教学管理系统 YOYOPlayer 基于Java的网络播放器源代码 宾馆管理系统 餐饮门户 超市购物系统 车间管控 打地鼠游戏 单位固定资产登记管理系统JAVA版 电子书店管理系统 分离SQL Server
数据
库 基于BS结构的Java可视化工作流定制软件 基于J2ME的Java游戏梦幻炸弹人源程序 基于JAVA的ICQ系统 基于Java的mp3播放器源代码 基于JAVA的日程提醒簿 基于Java的小型人事管理系统,带
数据
库 基于Java的邮件服务器源程序 基于MVC的Java资源管理器 v2.0 季风进销存管理系统(JSP版) 家庭多媒体播放器 开源Winzip压缩工具Java版源码 客户管理系统 Alfresco Content Management 乐趣大型购物系统 类似QQ的聊天软件JAVA版源码(附设计文档) 连接postsql
数据
库的java代码 泡泡堂战车游戏JAVA版源码 配置ODBC
数据
源 企业进销存管理系统 轻松商城系统 手机游戏J2ME毕业设计 书籍管理系统 网络电视源代码TV-Browser 蜀山剑侠传游戏J2ME手机版源代码 网上书店 物业管理系统毕业设计+源码 销售预测系统PDP系统 选修课程管理系统V1.2.3 阳光酒店管理系统 一款Java网络格斗游戏源码 用iText类库制作PDF文档 用JAVA做的聊天软件,有安装程序和源代码 在Servlet中连接
数据
库的Java代码 中国移动业务管理系统源码(SSH框架)
高效爬虫:轻松
获取
gzip
编码
网页
数据
在今天的互联网时代,
数据
是非常重要的一部分。而对于许多需要
获取
大量
数据
的应用程序来说,网络爬虫已经成为了必需品。本文将介绍一种最高效的方法——
gzip
编码
网页
爬虫,来
获取
网络上的
数据
。1.什么是
gzip
编码
?
Gzip
是一种压缩格式,它可以将文本压缩到原始大小的40%以下。因此
Linux 文件备份与压缩命令 < 6. >
Re: 《文件备份与压缩命令》 ---------------------------------------内容提要: 1/6)tar 命令:打包备份/解压打包(将文件或目录的压缩或不解压查看查看)2/6)
gzip
命令:压缩或解压文件3/6)zip 命令:打包和压缩文件4/6)unzip 命令:解压zip文件5/6)scp 命令:远程文件复制(全量备份)6/6)rsync 命令:文件同步工具(增量备份) 本人在教学和实战过程中发现,即便是有一定运维经验的人,可能已经能够搭建一定复杂度的Linux架构,但是在来来回回的具体操作中,还是体现出CLI(命令界面)功底不够扎实,甚至操作的非常‘拙’、处处露‘怯’。 对
一个
士兵来说,枪就是他的武器,对于
一个
程序员来说,各种library(工具库)就是他的武器;而对于Linux运维人员来说,无疑命令行工具CLI(命令界面)就是他们的武器;高手和小白之间的差距往往就体现在对于这些“武器”的掌握和熟练程度上。有时候
一个
参数就能够解决的事情,小白们可能要写
一个
复杂的Shell脚本才能搞定,这就是对CLI(命令界面)没有理解参悟透彻导致。 研磨每
一个
命令就是擦拭手中的作战武器,平时不保养不理解,等到作战的时候,一定不能够将手中的武器发挥到最好,所以我们要平心、静气和专注,甘坐冷板凳一段时间,才能练就一身非凡的内功! 本教程从实战出发,结合当下流行或最新的Linux(v6/7/8 版本)同时演示,将命令行结合到解决企业实战问题中来,体现出教学注重实战的务实精神,希望从事或未来从事运维的同学,能够认真仔细的学完Linux核心命令的整套课程。 本课程系列将逐步推出,看看我教学的进度和您学习的步伐,孰占鳌头! 注:关于教学环境搭建,可以参考本人其它课程系列,本教学中就不再赘述! 《参透 VMware 桌面级虚拟化》 《在虚拟机中安装模版机(包括应用软件等)》 《SecureCRT 连接 GNS3/Linux 的安全精密工具》
获取
http的
gzip
内容并解压
08年在csdn上面写了
一个
帖子关于解压http的
gzip
内容的,一直以来有不少的程序员前仆后继,持续的遇到同样的问题,正如我08年遇到的时候看的都是03 04年的帖子一样,现在把论坛上面的资料整理一下放到这里,希望能这个问题不会再困扰其他的程序员。------------------------------寻找
gzip
获取
一个
网页
数据
返回
的
编码
类型
是
gzip
,
我该
怎么
解压缩
?HTTP
c语言解压zlib
数据
寻找
gzip
获取
一个
网页
数据
返回
的
编码
类型
是
gzip
,
我该
怎么
解压缩
HTTP头
获取
? 如何用vb
获取
网络上的xml文件,并解析内容 关于
GZIP
的解码 怎样解
gzip
的压缩 请问Wininet是否可以进行
Gzip
的http传输,尤其是post的时候!如果可以如何实现? 关于
GZIP
格式
解压缩
HTTP
数据
包的问题,我使用ZLIB为什么必须先保存文件,内存
解压缩
出错 无法
获取
$_SERVER["H...
C#
110,571
社区成员
642,565
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章