java socket输出byte[]
时间: 2023-12-24 09:02:34 浏览: 52
可以通过OutputStream将byte[]写入Socket中,示例代码如下:
```java
Socket socket = new Socket("localhost", 8080);
OutputStream outputStream = socket.getOutputStream();
byte[] messageBytes = "Hello, World!".getBytes();
outputStream.write(messageBytes);
```
相关问题
java socket android
Java Socket是Java语言中用于网络编程的一个类库,它提供了一种基于TCP/IP协议的网络通信方式。在Android中,我们也可以使用Java Socket来进行网络编程。下面是一个简单的Java Socket Android交互的例子:
首先,我们需要在AndroidManifest.xml文件中添加网络权限:
```xml
<uses-permission android:name="android.permission.INTERNET" />
```
然后,在Android客户端中,我们可以使用Socket类来连接服务端,并通过输入输出流进行数据的传输。下面是一个简单的Android Socket客户端的例子:
```java
try {
// 创建Socket对象,并指定服务端的IP地址和端口号
Socket socket = new Socket("服务端IP地址", 服务端端口号);
// 获取输出流,向服务端发送数据
OutputStream outputStream = socket.getOutputStream();
outputStream.write("Hello, Server!".getBytes());
// 获取输入流,读取服务端的响应数据
InputStream inputStream = socket.getInputStream();
byte[] buffer = new byte[1024];
int len;
StringBuilder sb = new StringBuilder();
while ((len = inputStream.read(buffer)) != -1) {
sb.append(new String(buffer, 0, len));
}
Log.d(TAG, "接收到服务端的响应数据:" + sb.toString());
// 关闭流和Socket连接
inputStream.close();
outputStream.close();
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
```
在服务端,我们可以使用Java Socket来监听客户端的连接,并通过输入输出流进行数据的传输。下面是一个简单的Java Socket服务端的例子:
```java
try {
// 创建ServerSocket对象,并指定端口号
ServerSocket serverSocket = new ServerSocket(服务端端口号);
// 监听客户端的连接
Socket socket = serverSocket.accept();
// 获取输入流,读取客户端发送的数据
InputStream inputStream = socket.getInputStream();
byte[] buffer = new byte[1024];
int len;
StringBuilder sb = new StringBuilder();
while ((len = inputStream.read(buffer)) ! -1) {
sb.append(new String(buffer, 0, len));
}
Log.d(TAG, "接收到客户端发送的数据:" + sb.toString());
// 获取输出流,向客户端发送响应数据
OutputStream outputStream = socket.getOutputStream();
outputStream.write("Hello, Client!".getBytes());
// 关闭流和Socket连接
inputStream.close();
outputStream.close();
socket.close();
serverSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
```
需要注意的是,以上代码仅为演示Java Socket在Android中的使用方式,实际使用时需要根据具体需求进行修改。
java socket通信
Java中的Socket通信是一种基于网络的通信方式,可以实现进程间的数据交换和通信。下面是一个简单的Java Socket通信的示例代码:
```java
// 服务器端
import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
public static void main(String[] args) throws IOException {
// 创建服务器Socket并绑定端口
ServerSocket serverSocket = new ServerSocket(8888);
System.out.println("服务器启动,等待客户端连接...");
// 等待客户端连接
Socket socket = serverSocket.accept();
System.out.println("客户端已连接");
// 获取输入流
InputStream inputStream = socket.getInputStream();
byte[] buffer = new byte[1024];
int length;
// 读取客户端发送的数据
while ((length = inputStream.read(buffer)) != -1) {
String message = new String(buffer, 0, length);
System.out.println("收到客户端消息:" + message);
}
// 关闭连接
inputStream.close();
socket.close();
serverSocket.close();
}
}
```
```java
// 客户端
import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
public class Client {
public static void main(String[] args) throws IOException {
// 创建客户端Socket并指定服务器地址和端口
Socket socket = new Socket("localhost", 8888);
// 获取输出流
OutputStream outputStream = socket.getOutputStream();
// 发送消息到服务器
String message = "Hello, Server!";
outputStream.write(message.getBytes());
// 关闭连接
outputStream.close();
socket.close();
}
}
```
以上代码实现了一个简单的Socket通信,服务器端监听指定端口,等待客户端连接,客户端通过指定服务器地址和端口与服务器建立连接,并发送消息给服务器。
阅读全文