从剪贴板中读取文本

我试图在Unity中的C#中读取剪贴板中的文本,然后将其设置为变量。

我看过这篇文章但它似乎在Unity中不起作用: https : //msdn.microsoft.com/en-us/library/kz40084e(v = vs1010).aspx

我只是想能够阅读纯文本。 没有图像或任何东西。 我还发现了一些其他文章,但Unity中的代码都不起作用。

我做了一个快速示例来说明如何使用System.Windows.Forms命名空间中的Clipboard类。 事实certificate,该方法需要[STAThread]方法属性才能工作。 我不知道是否可以在Unity3D C#脚本中使用它。

 [STAThread] static void Main(string[] args) { if (Clipboard.ContainsText(TextDataFormat.Text)) { string clipboardText = Clipboard.GetText(TextDataFormat.Text); // Do whatever you need to do with clipboardText } } 

要了解有关该属性的用途的更多信息,请查看此问题(更重要的是,它的答案): [STAThread]做什么?

编辑:

我做了一点挖掘,看起来Unity3D有一个系统剪贴板的包装器。 我还没有尝试过,但看起来它应该适用于不同的操作系统,而不仅仅适用于Windows: GUIUtility.systemCopyBuffer