gpt4 book ai didi

java - HashMap - WebElements

转载 作者:行者123 更新时间:2023-12-02 01:07:05 24 4
gpt4 key购买 nike

有人可以帮助我尝试实现以下目标,但使用HashMap。我不是使用 HashMap 的专家。

使用数组编写代码

WebElement xmlResponse = iframeElements9.findElement(By.name("currentContactInfo.messageRecord.resMsg"));
WebElement xmlRequest = iframeElements9.findElement(By.name("currentContactInfo.messageRecord.reqMsg"));
WebElement[] listOfElements = {xmlRequest,xmlResponse};

FileHandlers outputToTextFile = new FileHandlers();
ConvertOutputToXML convert = new ConvertOutputToXML();

String textAreaValue=null;
String FileName = null;
org.w3c.dom.Document xmlOutput = null;
//iterating through the Array, this works fine but would like to achieve the same using hashmap
for (int j=0;j<listOfElements.length; j++){
textAreaValue = listOfElements[j].getText(); //using the Hashmap I would like to invoke getText
FileName = outputToTextFile.writeToFile(textAreaValue);// i then write this output to a file
convert.ReadTextFile(FileName);
xmlOutput = (org.w3c.dom.Document) convert.convertToXML(textAreaValue);
}

使用 HashMap 编写代码

HashMap<String, WebElement> XMLData = new HashMap<>();
XMLData.put("reqMsg",xmlRequest);
XMLData.put("resMsg",xmlResponse);
for (int i = 0; i < XMLData.size(); i++)
{
System.out.println(XMLData.get(i).getText()); //null pointer exception is what I get
}

理想情况下,我想使用键“reqMsg”或“resMsg”将文本区域的输出写入文件,每条消息都在它自己的文件中,使用数组工作正常,但只需要键。

最佳答案

要从 HashMap 获取值,您应该使用通过键访问的 get() 方法。
要访问这些元素,您应该执行以下操作:

XMLData.get("your_key")

在你的情况下是这样的:

HashMap<String, WebElement> XMLData = new HashMap<>();
XMLData.put("reqMsg",xmlRequest);
XMLData.put("resMsg",xmlResponse);

System.out.println(XMLData.get("reqMsg").getText());
System.out.println(XMLData.get("resMsg").getText());

然后就可以将数据写入文件了。

关于java - HashMap - WebElements,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59873554/

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