Closed. This question needs debugging details。它当前不接受答案。
                        
                    
                
            
        
            
        
                
                    
                
            
                
                    想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
                
                    2年前关闭。
            
        

    

我有一个从Excel文件读取方法,并向我返回String值。

我的excel值中ReqQty = 2,但它是字符串形式,并且从UI端应用程序不允许在“ ReqQty”中输入字符串值,它仅允许整数值。所以在这里我不能通过'SendKeys'方法在'ReqQty'字段中提供值。

代码是:

String Str = ExcelUtils.getcell(1,2) ;
Integer x = Integer.Valueof(x);
driver.findelement(By.xpath("xpath").sendkeys(Integer.valueo‌​f(x)); –

最佳答案

这是一些让您前进的方法:

@Test
public void testParsing() {
    String input = "ReqQty = 2";
    Pattern pattern = Pattern.compile("ReqQty.*=.*([\\d]+)");
    Matcher matcher = pattern.matcher(input);
    if (!matcher.find()) {
        throw new IllegalArgumentException("failed to parse digits from: " + input);
    }

    System.out.println(Integer.parseInt(matcher.group(1)));
}


关键要素:


正则表达式pattern,用于“匹配”字符串中的多个数字
Integer.parseInt()将数字子字符串转换为数字


除此之外:您似乎负担过重。您收到的错误消息非常清楚“ ReqQty = 2”不是仅包含数字的字符串。因此,您必须从此字符串中提取该数字部分。这真的是基本的东西。如果这已经超出了您的技能,那么从excel中获取数据以将其传递给硒可能就超出了您当前的技能!

因此:真正的答案是-退一步学习Java基础!

10-06 03:26