小编Roo*_*kie的帖子

Java通过套接字发送和接收文件(byte [])

我正在尝试开发一个非常简单的客户端/服务器,客户端将文件转换为字节,将其发送到服务器,然后将字节转换回文件.

目前该程序只是创建一个空文件.我不是一个出色的Java开发人员,所以任何帮助都非常感谢.

这是接收客户端发送内容的服务器部分.

ServerSocket serverSocket = null;

    serverSocket = new ServerSocket(4444);


    Socket socket = null;
    socket = serverSocket.accept();

    DataOutputStream out = new DataOutputStream(new BufferedOutputStream(socket.getOutputStream()));
    DataInputStream in = new DataInputStream(new BufferedInputStream(socket.getInputStream()));
    byte[] bytes = new byte[1024];

    in.read(bytes);
    System.out.println(bytes);

    FileOutputStream fos = new FileOutputStream("C:\\test2.xml");
    fos.write(bytes);
Run Code Online (Sandbox Code Playgroud)

这是客户端部分

Socket socket = null;
    DataOutputStream out = null;
    DataInputStream in = null;
    String host = "127.0.0.1";     

    socket = new Socket(host, 4444);
    out = new DataOutputStream(new BufferedOutputStream(socket.getOutputStream()));
    in = new DataInputStream(new BufferedInputStream(socket.getInputStream()));

    File file = new File("C:\\test.xml"); …
Run Code Online (Sandbox Code Playgroud)

java sockets client file

58
推荐指数
3
解决办法
22万
查看次数

ProcessBuilder找不到文件?!

快速连续的另一个问题,但这是一个我没有看到的非常明显的错误.我已经编写了一些代码来运行下面的批处理文件,但是我收到一条错误消息,说它无法找到该文件,但我可以向您保证该文件确实存在于该目录中!

public class Pull {

public void pullData() throws IOException {
    ProcessBuilder pb = new ProcessBuilder("adb.bat");
    File f = new File("C:\\");
    pb.directory(f);
    Process p = pb.start();  
}

 public static void main(String[] args) throws IOException {
     Pull pull = new Pull();
     pull.pullData();
 }
Run Code Online (Sandbox Code Playgroud)

}

这是错误信息

Exception in thread "main" java.io.IOException: Cannot run program "adb.bat" (in directory "C:\"): CreateProcess error=2, The system cannot find the file specified
Run Code Online (Sandbox Code Playgroud)

java batch-file processbuilder

8
推荐指数
1
解决办法
2万
查看次数

是否可以在 Postman 中修改变量

我正在使用 Postman 并且我正在尝试将一些请求链接在一起。在我的第一个请求中生成了一个身份字符串,我想在第二个请求中使用它,例如类似于搜索产品,然后将该产品添加到购物篮。

现在我已经能够从第一个请求中提取值,我可以在第二个请求中提取它。问题是身份字符串中有一个&符号。当我发布第二个请求时,它会抛出一个错误,因为与号尚未在字符串中转义。我想用“&”替换变量中的&符号,但我无法让它工作。

我是 JavaScript 新手,所以我想这就是问题所在。在邮递员我有:

var jsonObject = xml2Json(responseBody); console.log(jsonObject); postman.setEnvironmentVariable("ItineraryId", jsonObject.ItineraryId); ItineraryId.replace("&","&");

这将返回“评估测试脚本时出错:未定义 ItineraryId”。所以我试过:

var jsonObject = xml2Json(responseBody); console.log(jsonObject); var oldId = postman.setEnvironmentVariable("ItineraryId", jsonObject.ItineraryId); oldId.replace("&","&");

并得到“评估测试脚本时出错:无法读取未定义的属性‘替换’”

提前致谢。

javascript postman

2
推荐指数
1
解决办法
8046
查看次数

使用Java Swing GUI,如何在后台运行Server Socket并仍然使用GUI?

我有一个基本的服务器工作,但我希望能够按下GUI中的按钮来运行所述服务器.

目前,当我按下按钮运行服务器时,按钮保持按下状态,GUI的其余部分无法访问,直到我强制在Netbeans中停止它.我想包括按钮来停止服务器等所以我想知道如何在后台运行服务器代码,同时与GUI交互其他任何东西.

我怎样才能在GUI中实现这一目标?

java swing multithreading event-dispatch-thread

1
推荐指数
2
解决办法
5047
查看次数