【问题标题】:How to copy value in clipboard to a variable?如何将剪贴板中的值复制到变量中?
【发布时间】:2011-12-20 03:56:57
【问题描述】:

我在剪辑中有一个字符串,我想将它复制到一个变量 var。 我必须使用该字符串在变量中查找更多子字符串。

【问题讨论】:

    标签: variables batch-file clipboard


    【解决方案1】:

    使用clip 命令 但它在 Windows XP 中不存在 :(

    【讨论】:

      【解决方案2】:

      您可以利用 Internet Explorer 内置的功能,并使用其剪贴板对象。然后你可以用命令脚本封装访问 IE 对象的 VBScript:

      @ECHO OFF
      
          SETLOCAL ENABLEDELAYEDEXPANSION
      
          CALL :GetClipboardText Text
      
          ECHO %LineCount% lines copied.
      
          ECHO Line1: %Text1%
          ECHO Line2: %Text2%
          ECHO Line3: %Text3%
          ECHO Line4: %Text4%
      
          ENDLOCAL
      
      GOTO :EOF
      
      :GetClipboardText
      
          CALL :GetTempFilename TempFile
      
          ECHO Set objHTML = CreateObject("htmlfile")>%TempFile%
          ECHO WScript.Echo objHTML.ParentWindow.ClipboardData.GetData("text")>>%TempFile%
      
          SET LineIndex=1
      
          FOR /F "delims=" %%A IN ('%TempFile% //NOLOGO') DO (
              SET %1!LineIndex!=%%A
              SET /A LineIndex=!LineIndex!+1
          )
      
          SET LineCount=%LineIndex%
      
          DEL %TempFile%
      
      GOTO :EOF
      
      :GetTempFilename
      
          FOR /F "delims=:. tokens=2-5" %%A IN ('ECHO ^| TIME') DO SET T=%%A%%B%%C%%D & GOTO :X
      
      :X
      
          CALL :Trim %T% T
      
          SET %1=%Temp%\TMP%T%.vbs
      
      GOTO :EOF
      
      :Trim
          SET %2=%1
      GOTO :EOF
      

      不幸的是,由于命令脚本引擎的性质,我不得不将文本分成几行。在我的示例中,%LineCount% 将包含行数,将由 %Text1%、%Text2% 等重试。

      【讨论】:

        【解决方案3】:

        批处理文件不能直接与剪贴板交互。但是,有很多人为您编写了一些小工具来执行此操作,因此您可以从 website 获取 GetClip 工具。

        【讨论】:

          【解决方案4】:

          这取决于您的操作系统、工具包、语言。如果您在 Linux 上使用 Qt 在 C++ 中编写代码,则可以使用 QClipboard::text

          【讨论】:

            猜你喜欢
            • 2021-10-20
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2020-07-11
            • 1970-01-01
            • 2018-04-15
            • 1970-01-01
            • 2021-10-26
            相关资源
            最近更新 更多