gpt4 book ai didi

java - 从项目目录上传文件

转载 作者:搜寻专家 更新时间:2023-11-01 03:56:34 26 4
gpt4 key购买 nike

我正在尝试使用 Robot Framework 和 Java 从我的项目根文件夹上传文件。当弹出窗口打开时,根文件路径被发送到弹出窗口,但弹出窗口永远不会关闭以提交文件。如果我将文件路径更改为桌面,弹出窗口会打开,桌面文件路径已提交,弹出窗口关闭并提交文件。

这是我的机器人类

package utils;

import static java.awt.event.KeyEvent.*;
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;

public class RobotWrite {

private Robot robot;

public RobotWrite() throws AWTException {
this.robot = new Robot();
}



public void type(CharSequence characters) throws AWTException {
int length = characters.length();
for (int i = 0; i < length; i++) {
char character = characters.charAt(i);
type(character);
}
}

public void type(char character) throws AWTException {
switch (character) {
case 'a': doType(VK_A); break;
case 'b': doType(VK_B); break;
.........
.........
case '?': doType(VK_SHIFT, VK_SLASH); break;
case ' ': doType(VK_SPACE); break;
default:
throw new IllegalArgumentException("Cannot type character " + character);
}
}

private void doType(int... keyCodes) {
doType(keyCodes, 0, keyCodes.length);
}

private void doType(int[] keyCodes, int offset, int length) {
if (length == 0) {
return;
}

robot.keyPress(keyCodes[offset]);
doType(keyCodes, offset + 1, length - 1);
robot.keyRelease(keyCodes[offset]);
}

}

还有我设置路径的调用方法..

public static void Robotwrite() throws Exception{
try{
RobotWrite rw = new RobotWrite();
rw.type("C:\\workspace\\project\\src\\main\\resources\\data\\ExampleCV.docx"); //doesnt work
//rw.type("C:\\Users\\Desktop\\ExampleCV.docx"); //works

Robot r = new Robot();
r.keyPress(VK_ENTER);
r.keyRelease(VK_ENTER);

}catch (Exception e){
Log.error("Could not write");
throw(e);
}
}

最佳答案

通常您可以通过将文件路径发送到网站的输入元素(例如上传按钮)来解决此问题。

关于java - 从项目目录上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34828861/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com