`

数据压缩与传输

    博客分类:
  • Java
阅读更多

FileServer:

import java.net.*;
import java.io.*;
import java.util.zip.GZIPOutputStream;

public class FileServer {
	int port = 2345; // 端口号
	ServerSocket serverSocket; // 服务器套接字

	public FileServer() {
		try {
			serverSocket = new ServerSocket(port); // 实例化套接字
			System.out.println("start server at port " + port); // 在命令窗口输出提示信息

			while (true) {
				Socket client = serverSocket.accept(); // 等待连接
				System.out.println("Connect: " + client.getInetAddress()); // 输出客户机地址
				DataOutputStream out = new DataOutputStream(client
						.getOutputStream()); // 得到输出流
				GZIPOutputStream gout = new GZIPOutputStream(out); // 压缩输出流
				FileInputStream fileIn = new FileInputStream("c:/1.txt"); // 待传送的文件

				byte[] buffer = new byte[1024]; // 缓冲区大小
				int length;
				while ((length = fileIn.read(buffer)) != -1) { // 读取数据
					gout.write(buffer, 0, length); // 写入数据到文件
				}
				gout.close(); // 关闭输出流
				fileIn.close();
				client.close(); // 关闭端口
				System.out.println("Send Success.");
			}
		} catch (IOException ex) {
			ex.printStackTrace(); // 输出错误信息
		}
	}

	public static void main(String[] args) {
		new FileServer();
	}
}

 

GetFile:

import java.net.*;
import java.io.*;
import java.util.zip.GZIPInputStream;

public class GetFile {
	int port = 2345; // 端口号
	String host = "localhost"; // 服务器地址
	Socket socket; // 客户端套接字

	public GetFile() {
		try {
			socket = new Socket(InetAddress.getByName(host), port); // 实例化套按字

			DataInputStream in = new DataInputStream(socket.getInputStream()); // 得到输入流
			GZIPInputStream gin = new GZIPInputStream(in); // 压缩输入流
			FileOutputStream fileOut = new FileOutputStream("e:/2.txt"); // 文件输出流

			byte[] buffer = new byte[1024]; // 缓冲区
			int length;
			while ((length = gin.read(buffer)) != -1) { // 读取数据
				fileOut.write(buffer, 0, length); // 写入数据到文件
			}
			System.out.println("Received Success!");
			gin.close(); // 关闭输入流
			socket.close(); // 关闭套接字
			fileOut.close(); // 关闭输出流
		} catch (IOException ex) {
			ex.printStackTrace(); // 输出错误信息
		}
	}

	public static void main(String[] args) {
		new GetFile();
	}
}

 

分享到:
评论

相关推荐

    Java数据压缩与传输实例

    在Java编程环境中,数据压缩与传输是常见的任务,特别是在处理大量数据或进行网络通信时。本文将深入探讨Java中如何实现这两个关键功能,并提供相关的源码示例。 首先,我们来了解一下Java中的数据压缩。Java标准库...

    Java数据压缩与传输实例.rar

    在Java编程语言中,数据压缩和...总之,Java数据压缩与传输实例涵盖了数据压缩的基本操作和网络通信的基础知识,通过学习这些内容,开发者可以更好地理解和运用Java进行实际项目开发,提高应用程序的性能和用户体验。

    Java数据压缩与传输实例.7z

    在IT行业中,Java数据压缩与传输是至关重要的技术,尤其在大数据处理、网络通信和存储优化等场景下。本实例将深入探讨如何使用Java来实现数据的压缩与传输,这通常涉及到两个主要方面:数据压缩和数据传输。下面将...

    数据压缩与传输_java_throwc4v_

    在IT行业中,数据压缩与传输是一项基础且重要的技术,尤其在大数据时代,高效的数据压缩能够减少存储空间,提高网络传输效率。本实例聚焦于Java语言实现数据压缩与传输的实践,涉及了多个关键概念和方法。 首先,...

    Java数据压缩与传输实例.zip

    在Java编程领域,数据压缩与传输是两个关键的技术点,特别是在大数据处理、网络通信和文件存储等场景中。本实例将探讨如何使用Java实现数据的压缩和传输,以提高效率和节省存储空间。 首先,我们要了解Java中的数据...

    基于Java的数据压缩与传输实例.zip

    数据压缩与传输是Java开发中的重要环节,它涉及到如何有效地存储和传递大量信息。本实例将探讨如何使用Java实现数据压缩和传输,以提高效率和减少网络带宽消耗。 在"基于Java的数据压缩与传输实例.zip"中,我们可以...

    基于Java的实例源码-数据压缩与传输实例.zip

    本实例聚焦于“基于Java的数据压缩与传输”,通过源码解析,我们可以深入理解Java如何实现这两个关键功能。 首先,数据压缩是提高存储效率和减少网络传输时间的重要手段。在Java中,我们可以使用内置的`java.util....

    java源码:Java数据压缩与传输实例.zip

    结合以上讨论,Java数据压缩与传输实例可能包括创建一个程序,该程序能够接收用户输入的数据,对其进行压缩,然后通过网络发送到另一个Java程序,接收端接收并解压缩数据,最后显示原始数据。这个实例可以帮助开发者...

    基于java的开发源码-数据压缩与传输实例.zip

    基于java的开发源码-数据压缩与传输实例.zip 基于java的开发源码-数据压缩与传输实例.zip 基于java的开发源码-数据压缩与传输实例.zip 基于java的开发源码-数据压缩与传输实例.zip 基于java的开发源码-数据压缩与...

    Java数据压缩与传输实例Java实用源码整理learns

    Java数据压缩与传输实例Java实用源码整理learns

    Java数据压缩与传输实例Java源码.

    在Java编程语言中,数据压缩和传输是两个关键的概念,特别是在大数据处理、网络通信和存储优化的场景下。本实例提供了Java源码,用于演示如何实现这些功能。 首先,我们来了解一下数据压缩。数据压缩的主要目的是...

    基于java的数据压缩与传输实例.zip

    在Java编程语言中,数据压缩和传输是两个重要的概念,特别是在大数据处理、网络通信和存储优化的场景下。本实例将探讨如何使用Java实现数据压缩和传输,以提高效率并节省资源。 首先,我们来看一下Java中的数据压缩...

    边缘设备异常数据压缩与传输.pptx

    解决方案,研究报告,技术方案

    Java数据压缩与传输实例源码

    本实例源码着重探讨了Java在数据压缩与传输方面的应用,这对于优化网络资源利用、提高数据传输效率至关重要。下面我们将深入解析这个主题,探讨相关知识点。 一、Java数据压缩 1. 压缩库:Java提供了内置的`java....

    java数据压缩传输

    在Java编程环境中,数据压缩和传输是常见的任务,特别是在大数据处理、网络通信和文件存储等领域。Java提供了多种库和API来实现数据的压缩与解压缩,以提高存储效率和网络传输速度。本篇文章将深入探讨Java中的数据...

    WCF 数据压缩传输

    **WCF 数据压缩传输** Windows Communication Foundation (WCF) 是微软提供的一种用于构建分布式应用程序的服务框架,它允许服务提供者和服务消费者之间进行安全、可靠、事务性的通信。在某些情况下,如在网络带宽...

    面向MCU低成本测试的数据串行压缩传输方法

    面向MCU低成本测试的数据串行压缩传输方法

    .NET压缩传输数据集

    `.NET压缩传输数据集` 提供了解决这一问题的一种策略,它涉及到如何利用.NET框架中的类和库来压缩数据集,并通过网络进行安全、高效的传输。本文将详细讲解这一主题,包括主要的类方法和使用的dll组件。 首先,我们...

    手机端后台向前台传输数据的二进制压缩方法

    开发者可以学习如何将JSON数据转换为二进制,以及如何使用压缩库如Gzip进行数据压缩和解压。 总结来说,理解并掌握二进制压缩方法对于优化移动应用的数据传输至关重要。通过合理选择二进制编码格式、压缩算法,并...

Global site tag (gtag.js) - Google Analytics