2017-02-23 30 views
1

我想從網站複製/粘貼int,我知道這是一種非常好的方式,即使是非正確的方式,但我沒有找到更好的方式如何從網頁複製/粘貼'int'內容

隨着java.awt.Robot中的我走在頁面上的有利位置,使2個CLICS選擇內容,然後做一個CTRL + C將其添加到剪貼板

但我得回去值是int

public static String getAsText() { 
     String clipText = ""; 
     Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); 
     Transferable contents = clipboard.getContents(null); 
     if ((contents != null) && contents.isDataFlavorSupported(DataFlavor.stringFlavor)) { 
      try { 
       clipText = (String) contents.getTransferData(DataFlavor.stringFlavor); 
      } catch (UnsupportedFlavorException ex) { 
       Logger.getLogger(ClipboardTransfert.class.getName()).log(Level.SEVERE, null, ex); 
      } catch (IOException ex) { 
       Logger.getLogger(ClipboardTransfert.class.getName()).log(Level.SEVERE, null, ex); 
      } 
     } 
     return clipText; 
    }  

這適用於字符串,但不是int。我試過:

  • DataFlavor intFlavor = new DataFlavor(int.class, "Integer");但異常在isDataFlavorSupported

  • 更改類型的方法來詮釋,也clipText變量,但沒有工作

  • 常用的鑄造方法,但沒有工作,它打印字符串(以確保=>如果我做theString + 1,我得到:theString1

那麼如何?

+0

因此,您正在將所需的數字作爲字符串在此刻? –

+0

是準確和Integer.valueOf()什麼也不做 – azro

+0

嘗試的Integer.parseInt(yourString) –

回答

1

我可能會誤解你的問題,但你不能只parse呢?像這樣:

int clipboardContent = Integer.parseInt(contents.getTransferData(DataFlavor.stringFlavor)); 
+0

這相當於Integer.valueof()和它「通常進入鑄造方法「,正如我在我的問題中說過的,我已經試過了 – azro

+0

」你打印字符串「是什麼意思?你可以在哪裏打印代碼嗎? –