用Java中的原始数据创建图像
我已经编写了一个小型TCP客户端来检索各种数据。它可以很好地处理文本,但我不知道如何实现图像处理。此时,传入数据存储在用Java中的原始数据创建图像,java,tcp,javax.imageio,Java,Tcp,Javax.imageio,我已经编写了一个小型TCP客户端来检索各种数据。它可以很好地处理文本,但我不知道如何实现图像处理。此时,传入数据存储在阵列列表中: public ArrayList sendSelector(字符串选择器、字符串主机、int端口)引发IOException{ 套接字=新套接字(主机、端口); out=新的PrintWriter(socket.getOutputStream(),true); in=新的BufferedReader(新的InputStreamReader(socket.getInp
阵列列表中:
public ArrayList sendSelector(字符串选择器、字符串主机、int端口)引发IOException{
套接字=新套接字(主机、端口);
out=新的PrintWriter(socket.getOutputStream(),true);
in=新的BufferedReader(新的InputStreamReader(socket.getInputStream());
输出打印项次(编码百分比(选择器)+CRLF);
ArrayList行=新的ArrayList();
弦线;
而((line=in.readLine())!=null){
如果(第行等于(“.”)
打破
行。添加(行);
}
out.close();
in.close();
socket.close();
回流线;
}
如何使用存储在阵列列表中的GIF或JPEG创建图像
或缓冲图像
?(或者我完全不知道,必须使用不同的数据结构吗?一旦从服务器打开输入流,请使用以下方法创建图像:
为了提高效率,您可以将包装到缓冲输入流中中
是否从服务器检索GIF或JPEG文件,或者图像数据是否为其他格式?我从服务器获取GIF或JPEG。
public ArrayList<String> sendSelector(String selector, String host, int port) throws IOException {
socket = new Socket(host, port);
out = new PrintWriter(socket.getOutputStream(), true);
in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
out.println(encodePercent(selector) + CRLF);
ArrayList<String> lines = new ArrayList();
String line;
while ((line = in.readLine()) != null) {
if (line.equals("."))
break;
lines.add(line);
}
out.close();
in.close();
socket.close();
return lines;
}
public BufferedImage sendSelector(String selector, String host, int port) throws IOException {
socket = new Socket(host, port);
try {
out = new PrintWriter(socket.getOutputStream(), true);
out.println(encodePercent(selector) + CRLF);
in = socket.getInputStream();
return ImageIO.read(in);
} finally {
socket.close(); // closes in and out as well
}
}