将剪贴板内容与其中包含“\n”的字符串进行比较 -Java

Comparing clipboard contents to a string with a "\n" in it -Java

我正在读取一个 txt 文件,然后将其转换为一个字符串。 我在根据包含“\n”的字符串检查剪贴板内容时遇到问题。如果剪贴板内容中有换行符,则它不会检查是否与字符串内容匹配。假设我复制以下内容: “你好 那里” 这不等同于字符串中已有的相同内容。代码如下。 是否有可能让它正确检查?如果是这样怎么办?如果没有,我可以检查文本文件,同时仍然确保我保留格式,因为需要 \n 来保留格式以供以后使用。

            BufferedReader clipboardStorageReader = new BufferedReader(clipboardStorageFile);
            String clipboardStorageResponses = new String();

            try {
                for (String line; (line = clipboardStorageReader.readLine()) != null;){
                    if(line.contains(",,,")){
                        clipboardStorageResponses += line;
                    }else {
                        clipboardStorageResponses += line + "\n";
                        }
                }
            } catch (IOException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            }
            System.out.println(clipboardStorageResponses);
            if (clipboardStorageResponses.contains(result)) {

                System.out.println("Fail");
            }

我正在制作一个程序,它至少保留了我复制的最后 50 件东西,以供日后使用。显示这是一个 JScrollPane,因此我可以剪辑一个 GUI 以将其放回剪贴板上。只是想避免任何重复。

您可以通过

删除换行符
line = line.trim(); // returns a copy of the string, with leading and trailing whitespace omitted. 

或者您可以将其替换为空字符串:

line = line.replace("\n", "").replace("\r", "");