Tag:

Java流程流

我遇到与某些终端应用程序交互的问题(在我的情况下,它是openSSL)。 我有一个命令发送,然后这个应用程序想要密码和回复给定的密码。 我的代码不起作用。 我的意思是我没有看到它的任何输出。 为了测试我还做了一个简单的应用程序,它等待两个字符串输入并从我的Java代码中运行它。 你有什么建议吗? ProcessBuilder pb = new ProcessBuilder(“openssl.exe”); Process process = pb.start(); final InputStream is = process.getInputStream(); new Thread(new Runnable() { public void run() { try { BufferedReader reader = new BufferedReader(new InputStreamReader(is)); String line; while ((line = reader.readLine()) != null) { System.out.println(line); } } catch (IOException e) { e.printStackTrace(); } finally […]

服务器在客户端 – 服务器应用程序中不接收消息

在我的客户端 – 服务器应用程序中,客户端向服务器发送消息,服务器应显示消息。 但就我而言,客户端只能发送但服务器无法实现。 我尝试过不同的端口号(即8080,8000,4444等)。 看来套接字可以设置连接,但我真的不知道为什么服务器无法读取客户端的输入。 这是我的完整项目(我已经忽略了这两个应用程序的主要类,因为我只有调用方法): EchoServer.java: package client.server; import java.io.*; import java.net.*; public class EchoServer { public EchoServer() { } public void establish() { ServerSocket serverSocket = null; try { serverSocket = new ServerSocket(8080); } catch (IOException e) { System.out.println(“Could not listen on port: 1234”); System.exit(-1); } Socket clientSocket = null; try { […]

Java方法返回文件数据,输入流或字节数组,哪个更好?

我需要加载许多文件路径小于1MB的二进制文件,如下所示:loadFile(String path); 它应该返回byte []还是Inputstream? 我认为返回byte []将占用大量内存,我不知道如何返回ByteArrayInputStream或事件FileInputream,因为我不知道何时关闭InputStream。 谢谢。

与Java的网络时间同步

我正在使用Java创建一个p2p audio-midi流媒体应用程序(不幸的是)我正在寻找一种使用可靠的协议实现(如NTP)在某些对等体(源)之间提供网络时间同步的方法,但我找不到任何相关的库都可以使用。我也花费有限的时间来实现这样的事情。 那么,有没有人知道使用Java,NTP或替代协议/方法/想法进行网络时间同步的任何解决方案? 我真的很感激任何想法! 谢谢!

如何使用applet从java中的网络摄像头捕获video?

我喜欢使用java applet通过网络捕获和流式传输video。 到目前为止,看起来JMF已经过时,FMJ将无法以任何合理的速度捕获。 是否还有其他库可用于以至少每秒10-15帧的速度从网络摄像头捕获和传输video?

如何用jsp源构建base64图像src?

我正在努力与base64。 我想通过wysiwyg编辑器解码一个图像。 我建立了一个像下面这样的来源。(它是……的一部分) InputStream is = request.getInputStream(); byte b[] = IOUtils.toByteArray(is); String base64DataString = Base64.encodeBase64String(b); String aaa = Base64.encodeBase64URLSafeString(b); base64DataString = “data:image/” + ext + “;base64,” + aaa; if(aaa == “a”){} if(is != null) { is.close(); } 我从请求中获取了InputStream并将其作为字节数组。 byte [] b的大小与我上传的文件大小完全相同。 然后我结合一个String来放置图像标签的src属性。 毕竟,当我看到HTML时。 它有一个破碎的图像。 输出如下所示: 我的代码有多可疑部分? 谢谢你的回答:D bb

使用FileInputStream / ObjectOutputStream发送大文件

我的作业需要帮助,非常感谢任何帮助。 我可以毫无问题地发送小文件。 但是当我尝试发送时,假设一个1GB的文件字节数组发送OutOfMemoryError,所以我需要一个更好的解决方案来将文件从服务器发送到客户端。 如何改进此代码并发送大文件,请帮助我。 服务器代码: FileInputStream fis = new FileInputStream(file); byte[] fileByte = new byte[fis.available()]; //This causes the problem. bytesRead = fis.read(fileByte); oos = new ObjectOutputStream(sock.getOutputStream()); oos.writeObject(fileByte); 客户代码: ois = new ObjectInputStream(sock.getInputStream()); byte[] file = (byte[]) ois.readObject(); fos = new FileOutputStream(file); fos.write(file);

Androidexception(不可信服务器证书):https带有服务器身份validation的XML请求

在我的Android应用程序中,我必须读取存储在服务器中的XML文件。 由于这是一个安全的网页[SSL(https)],要访问XML文件所在的位置( https://serverAddress/path/ ),通常需要用户名/密码validation 以下是我用来阅读和获取XML Stream的代码。 但是当它试图执行HttpResponse httpResponse = httpClient.execute(httpGet);时总会出现exceptionHttpResponse httpResponse = httpClient.execute(httpGet); 声明。 例外表示Not trusted server certificate 。 还在Manifest文件中添加了Internet访问权限 如果XML文件存储在不需要任何身份validation的地方,那么它可以正常工作。 我到处搜索,但没有找到任何可以做到这一点的例子。 如果有人可以指导这个过程,我将非常感激。 提前致谢…!!!! try { Log.v(“State”,”Started…”); HttpClient httpClient = new DefaultHttpClient(); HttpGet httpGet = new HttpGet(“https://serverAddress/path/MyXMLFile.xml”); httpGet.addHeader(BasicScheme.authenticate(new UsernamePasswordCredentials(“username”, “password”),HTTP.UTF_8, false)); HttpResponse httpResponse = httpClient.execute(httpGet); InputStream xmlInputStream = httpResponse.getEntity().getContent(); Toast.makeText(getApplicationContext(), this.convertStreamToString(xmlInputStream), Toast.LENGTH_LONG).show(); Log.v(“State”,”Finish…”); } catch(Exception […]

在可运行的jar中加载和保存资源?

可能重复: Java程序如何使用.jar中的文件进行读写? 我正在创建一个游戏,我希望所有这些都在runnable jar文件上运行,所以我的所有资源(图像和文本文件)都将在jar文件中。 我遇到的问题是,处理jar中的文件非常困难。 我正在使用eclipse,它有时会对你起作用,因为如果你从eclipse运行它会找到文件,但如果你导出它就不会。 我只是想知道揭露一些事情的正确方法: 我需要能够加载图像(我已经工作了,不知何故。我有点修补它并且意外地做了,所以我不知道它是如何工作的) 我需要能够从文本文件中读取(我也有这个工作,再次,偶然和猜测几个小时。) 我需要能够写入存在且存在于jar中的文本文件。 这就是让我觉得我做错了。 我想要做的就是能够保存某些设置,以便它们在下次加载时工作,而且我不知道如何写入文件。 在eclipse(Indigo)中,我创建了一个名为“resources”的文件夹,并将其标记为源文件夹。 我把所有的图像和文本文件放在那里。 我读了这样的图像: public static Image ammo = new ImageIcon(TankMazeGame.class.getResource(“ammo.png”)).getImage(); 我读了这样的文本文件: InputStream is = TankMazeRunner.class.getClassLoader().getResourceAsStream(“Settings.txt”); Scanner settingsReader = new Scanner(new InputStreamReader(is)); 我正在写这样的设置文件,但它并没有真正起作用,所以这就是我需要帮助的地方。 File settingsFile = new File(DisplayMenu.class.getClassLoader().getResource(“Settings.txt”).getFile()); try { OutputStream os = new FileOutputStream(settingsFile, true); PrintWriter pw = new PrintWriter(os, true); pw.write(“SIZE: ” […]

为什么EOFException主要由数据输入流使用?

来自Java API 公共类EOFException扩展了IOException 表示在输入期间意外到达文件末尾或流末尾的信号。 此exception主要由数据输入流用于信号流的结束。 请注意, 许多其他输入操作在流的末尾返回特殊值而不是抛出exception。 那么为什么数据输入流与其他输入操作有如此不同呢? 为什么它不像其他输入操作那样返回特殊值来表示流的结束? 因为我认为exception只应用于非常特殊的情况。