将电话号码从Outlook粘贴到JavaFX TextField或TextArea会产生无关字符

将电话号码从Outlook粘贴到JavaFX TextField或TextArea会产生无关字符,java,javafx,outlook,textarea,textfield,Java,Javafx,Outlook,Textarea,Textfield,我遇到了一个奇怪的问题,如果用户将Outlook联系人中的电话号码复制并粘贴到javaFX中的文本字段或文本区域,就会出现一堆无关字符 例如,如果他们从Outlook联系人字段复制“(555)555-1234”并粘贴到javaFX应用程序文本字段或区域中,结果是“(555)555-1234e.UX.FlexClipboard.FUpdateAcbUi”,“CV”:“ER1soZ/YLEibq7jkbdMVCg.163”,“ProcessIdentifier”:“Outlook.exe_16.0.

我遇到了一个奇怪的问题,如果用户将Outlook联系人中的电话号码复制并粘贴到javaFX中的文本字段或文本区域,就会出现一堆无关字符

例如,如果他们从Outlook联系人字段复制“(555)555-1234”并粘贴到javaFX应用程序文本字段或区域中,结果是“(555)555-1234e.UX.FlexClipboard.FUpdateAcbUi”,“CV”:“ER1soZ/YLEibq7jkbdMVCg.163”,“ProcessIdentifier”:“Outlook.exe_16.0.13029.20308_X86”{A16C1D11-D89F-482C-9BAB-B8E46DD3150A}“Activity.CV”:“ER1soZ/YLEibq7jkbdMVCg.162”,“活动持续时间”:86,“Ac”

  • 这似乎只发生在Outlook中的电话号码字段中。其他字段-姓名、地址等似乎工作正常
  • 如果我从Outlook粘贴到Word,一个文本文件,甚至是intelliJ中的一个文件,它会正常显示
  • 无论我是通过Ctrl-V还是鼠标右键选择复制或粘贴,甚至是通过编程方式复制或粘贴,这都无关紧要
抱歉-这里确实没有显示“代码”。我相信任何FX应用程序文本字段或区域都会出现这种情况


想法?

我会尝试检查字符串是否包含太多字符,然后删除它们。 这很快很容易,但不是最有效的方法

private static String checkString(String s ){

    if (s.length() > 12){

        for(int i =0; i< s.length(); i++){
            if(s.charAt(i) > 'a' && s.charAt(i) < 'z'){
            return s.substring(0, i);
            }
        }

    }
    return s;
}
私有静态字符串校验字符串(字符串s){
如果(s.长度()>12){
对于(int i=0;i‘a’和s.charAt(i)<‘z’){
返回s.substring(0,i);
}
}
}
返回s;
}

我相信任何FX应用程序文本字段或区域都会出现这种情况,然后编写一个只包含一个文本字段的非常简单的应用程序。你有任何带有文本字段的FX应用程序吗?你有Outlook吗?如果有,请从Outlook复制一个电话号码并粘贴到FX应用程序中。我无需为此编写任何内容。